php 按 截取字符串,PHP按符号截取字符串的指定部分

字符串截取在php开发中是比较常用的;

而且对于截取的需求也有很多种;

就比如说对url链接的操作:http://baijunyao.com/article/12

有时我们想截取最后一个斜杠'/'后面的数字;

有时我们又需要截取第一个斜杠'/'前面的内容判断用户输入的url链接带不带http://等等;

字符串的截取php内置函数就有很多种;

简单示例如下;

$str='123/456/789/abc';

截取第一个斜杠前面的内容可以这样来:

echo substr($str,0,strpos($str, '/'))

或者

$array=explode('/', $str);

echo $array[0];

// 输出 123

截取第一个斜杠后面的内容可以这样来:

echo trim(strrchr($str, '/'),'/');

如果知道斜杠的数量

$array=explode('/', $str);

echo $array[3];

//输出 abc

如果不知道有多少个斜杠呢?如果想要第二个斜杠和第三个斜杠中间的内容呢?

下面这个函数就可以轻松解决如上 所有问题;

/**

* 按符号截取字符串的指定部分

* @param string $str 需要截取的字符串

* @param string $sign 需要截取的符号

* @param int $number 如是正数以0为起点从左向右截 负数则从右向左截

* @return string 返回截取的内容

*/

function cut_str($str,$sign,$number){

$array=explode($sign, $str);

$length=count($array);

if($number<0){

$new_array=array_reverse($array);

$abs_number=abs($number);

if($abs_number>$length){

return 'error';

}else{

return $new_array[$abs_number-1];

}

}else{

if($number>=$length){

return 'error';

}else{

return $array[$number];

}

}

}

示例

echo cut_str($str,'/',0); //输出 123

echo cut_str($str,'/',2); //输出 789

echo cut_str($str,'/',-1);//输出 abc

echo cut_str($str,'/',-3);//输出 456

感谢大家阅读到这里~~~

Excel中如何截取字符串中指定字符后的部分字符

1.如何给某列属性为时间整体加一个时间值:      场景一:假如我有一个excel中的某一列如下图所示,如何将该列的时间(用B代替整列)整体加一分钟呢?方法很简单,在空白单元格填写时间格式图中A所示 ...

C&num; - 怎么截取字符串中指定字符及其后面的字符

方法1:去掉空格以及后面的字符   //怎么截取让date的值为"2011/12/9",即去掉空格以及后面的字符   string date = "2011/12/9 2 ...

String截取字符串的指定字节长度

/** TODO:截取字符串的指定字节长度 * @Author wenjing * @Date 11:02 2019/5/15 * @Param [str, bengin, end] * @retur ...

请求大神,C&num;如何截取字符串中指定字符之间的部分 按指定字符串分割 一分为二 c&num; 去除字符串中的某个已知字符

string stra = "abcdefghijk";string strtempa = "c";string strtempb = "j&quot ...

sql server按符号截取字符串

http://www.360doc.com/content/12/0626/13/1912775_220523992.shtml

Java 截取字符串中指定数据及之后数据

String resCallBackJson="12556{1{{{456858585{";        resCallBackJson = resCallBackJson.su ...

深入SQL截取字符串&lpar;substring与patindex&rpar;的详解

首先学习两个函数1.substring  返回字符.binary.text 或 image 表达式的一部分.基本语法:SUBSTRING ( expression , start , length ) ...

PHP截取字符串函数substr&lpar;&rpar;函数实例用法详解

在PHP中有一项非常重要的技术,就是截取指定字符串中指定长度的字符.PHP对于字符串截取可以使用PHP预定义函数substr()函数来实现.下面就来介绍一下substr()函数的语法及其应用. sub ...

Excel怎样从一串字符中的某个指定&OpenCurlyDoubleQuote;字符”前后截取字符及截取字符串常用函数

怎么样可以从一串字符中的某个指定位置的前或后截取指定个数的字符. 如:12345.6789,我要截取小数点前(或后)的3个字符.怎么样操作, 另外,怎么样从右边截取字符,就是和left()函数相反的那 ...

随机推荐

iOS开发网络篇—监测网络状态&lpar;转&rpar;

文章转载自:http://www.cnblogs.com/wendingding/p/3950114.html iOS开发网络篇—监测网络状态 一.说明 在网络应用中,需要对用户设备的网络状态进行实时 ...

微信开发——OAuth2&period;0授权

微信公众平台最近新推出微信认证,认证后可以获得高级接口权限,其中一个是OAuth2.0网页授权,很多朋友在使用这个的时候失败了或者无法理解其内容,希望我出个教程详细讲解一下,于是便有了这篇文章. 一. ...

《微信小程序七日谈》- 第二天:你可能要抛弃原来的响应式开发思维

系列文章: 第一天:人生若只如初见: 第二天:你可能要抛弃原来的响应式开发思维: 第三天:玩转Page组件的生命周期: 第四天:页面路径最多五层?导航可以这么玩 上篇文 ...

django schema migration

syncdb 仅仅能初始化table(create),不能自己主动update/delete/drop. 那么south应运而生. south简单使用方法: 安装: pip install South ...

Thinkphp框架----微信公众测试号开发&lpar;2&rpar;

---恢复内容开始--- 最近忙着投简历找工作.现在继续更 微信回复图文设置. 效果: 页面HTML需要一个form表单 简单效果: 接下来是数据库 字段:id title(标题) text(描述) ...

php的引用&amp&semi;(就是在变量或者函数、对象等前面加上&amp&semi;符号)

官方文档: 1.引用是什么:http://www.php.net/manual/zh/language.references.whatare.php 2.引用做什么:http://www.php.ne ...

滑动开关效果 css3滑动开关】纯CSS3代码实现滑动开关效果-css3滑动效果-css3左右滑动

今天看到一篇有关 css3事件的博文,一时兴起便整理下相关的资料. 点击按钮,可以实现开关的滑动效果. 今天看到一篇有关 css3事件的博文,一时兴起便整理下相关的资料. 点击按钮,可以实现开关的滑动 ...

CSS3动画之透视

若在x,y轴rotate90度,其实是线,不显示,按近大远小的透视关系可用 perspective:数值 开启透视: 默认以中间线为旋转基线,可以用transform-origin来设置旋转基线 在z ...

&lbrack;html5&rsqb; 初识绘图canvas

这个星期被调到别的项目组专门做了一会儿前端,没办法,人太少,我也只能硬着头皮上... 说起来,html5的canvas真的好用,可以画色块,可以嵌入图片,可以通过定位在图片上写字等等 举例如下 在ht ...

Latex graphicx 宏包 scalebox命令

scalebox  命令需要加载  \usepackage{graphicx} \scalebox{水平缩放因子}[垂直缩放因子]{对象} \scalebox 命令对其作用的对象进行缩放,使缩放后的对 ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值