php 字符串处理函数

1、php 截取特定字符后面的内容  

可以使用函数strripos,获取一个字符串在另一个字符串中第一次出现的位置。
$number = 'g321-12345';
$result = substr($number,strripos($number,"-")+1);
echo $result;

输出:12345
 
2、php 截取特定字符前面的内容
可以使用函数strrops,获取一个字符串在另一个字符串中最后一次出现的位置。
$number= 'g321-12345';
$result = substr($test,0,strrpos($test,"-"));
echo $result;

输出:g321

3、字符串替换
 $arr = "http://static.dhsf.xqhuyu.com/box_test/logo/6/600129ad68d75.png";
 $url = "http://static.dhsf.xqhuyu.com/box_test";
 dump(str_replace($url,'',$arr));die();

输出:/logo/6/600129ad68d75.png

4、字符串截取
 $arr = "http://static.dhsf.xqhuyu.com/box_test/logo/6/600129ad68d75.png";
 $url = "http://static.dhsf.xqhuyu.com/box_test";
 $str_len = strlen($url);dump($str_len);
 dump(substr($arr,$str_len));die();

输出:/logo/6/600129ad68d75.png

5、截取第一个斜杠前面的
 $arr = "http://static.dhsf.xqhuyu.com/box_test/logo/6/600129ad68d75.png";
 dump(substr($arr,0,strpos($arr, '/')));die();
 
输出:http:

6、截取第一个斜杠后面的
 $arr = "http://static.dhsf.xqhuyu.com/box_test/logo/6/600129ad68d75.png";
 dump(trim(strrchr($arr, '/'),'/'));die();
 
输出:600129ad68d75.png

7/**
     * 按符号截取字符串的指定部分
     * @param string $str 需要截取的字符串
     * @param string $sign 需要截取的符号
     * @param int $number 如是正数以0为起点从左向右截 负数则从右向左截
     * @return string 返回截取的内容
     */
    public 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];
            }
        }
    }

8、 函数查找字符串在另一字符串中第一次出现的位置
	1. strstr() 函数搜索一个字符串在另一个字符串中的第一次出现。
该函数返回字符串的其余部分(从匹配点)。如果未找到所搜索的字符串,则返回 false$email = 'user@example.com';
 $domain = strstr($email, '@');
 echo $domain;
 
输出: @example.com

	2. stristr
stristr() 函数查找字符串在另一个字符串中第一次出现的位置。
如果成功,则返回字符串的其余部分(从匹配点)。如果没有找到该字符串,则返回 false。
它和strstr的使用方法完全一样.唯一的区别是stristr不区分大小写.

	3. strpos
strpos函数返回boolean值.FALSETRUE不用多说.用 “===”进行判断.strpos在执行速度上都比以上两个函数快,另外strpos有一个参数指定判断的位置,但是默认为空.意思是判断整个字符串.缺点是对中文的支持不好.
if(strpos('www.jb51.net','jb51') !== false){ 
 echo '包含jb51'; 
}else{
 echo '不包含jb51'; 
}
 	//获取指定字符之间字符串(不包含)
    function getNeedBetween($kw1,$mark1,$mark2){
        $lang = strlen($mark1);
        $kw=$kw1;
        $st =stripos($kw,$mark1);
        $ed =stripos($kw,$mark2);
        if(($st==false||$ed==false)||$st>=$ed)
            return 0;
        $kw=substr($kw,($st+$lang),($ed-$st-$lang));
        return $kw;
    }
   //获取指定字符之间字符串(包含)
    function delNeedBetween($kw1,$mark1,$mark2){
        $lang = strlen($mark1);
        $kw=$kw1;
        $st =stripos($kw,$mark1);
        $ed =stripos($kw,$mark2);
        if(($st==false||$ed==false)||$st>=$ed)
            return 0;
        $kw=substr($kw,($st),($ed-$st+$lang+1));
        return $kw;
    }
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值