php截取字符串网站内容(QQ群及捐赠渠道(一):轻松解决如上所有问题)
优采云 发布时间: 2021-12-30 21:59php截取字符串网站内容(QQ群及捐赠渠道(一):轻松解决如上所有问题)
字符串拦截在php开发中比较常用;
并且拦截的要求有很多种;
比如url链接的操作:
有时我们想截取最后一个斜杠'/'后的数字;
有时我们需要截取第一个斜杠'/'之前的内容,判断是否收录用户输入的url链接等;
PHP 内置了很多字符串截取函数;
简单写几个例子;
$str='123/456/789/abc';
第一个斜杠前的内容可以这样截取:
echo substr($str,0,strpos($str, '/'))
或者
$array=explode('/', $str);
echo $array[0];
// 输出 123
第一个斜杠后面的内容可以这样截取:
echo substr($str,strpos($str,'/')+1);
//输出 456/789/abc
最后一个斜杠后面的内容可以这样截取:
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$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
这个怎么样; 使用这个功能根据符号截取指定部分内容是否足够强大;
本文为白君尧原创文章,转载无需联系我,但请注明出自白君尧博客。欢迎捐赠,感谢加入组织创建QQ群和捐赠渠道