关于php中一些字符串总结

5年以前  |  阅读数:851 次  |  编程语言:PHP 

php自带的一个截取字符串的函数,只能处理英文,数字的不能截取中文混排的哦,有需要的朋友可以参考,后面的比较好用,第一个主要是给初学者学学用的。


    php
     //构造字符串
     $str = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
     echo "原字符串:".$str."
    ";
     //按各种方式进行截取
     $str1 = substr($str,5);
     echo "从第5个字符开始取至最后:".$str1."
    ";
     $str2 = substr($str,9,4);
     echo "从第9个字符开始取4个字符:".$str2."
    ";
     $str3 = substr($str,-5);
     echo "取倒数5个字符:".$str3."
    ";
     $str4 = substr($str,-8,4);
     echo "从倒数第8个字符开始向后取4个字符:".$str4."
    ";
     $str5 = substr($str,-8,-2);
     echo "从倒数第8个字符开始取到倒数第2个字符为止:".$str5."
    ";
     ?>

**支持中英文混合截取。


    /*
    ------------------------------------------------------
    参数:
    $str_cut  需要截断的字符串
    $length   允许字符串显示的最大长度
    程序功能:截取全角和半角(汉字和英文)混合的字符串以避免乱码
    ------------------------------------------------------
    */
    function substr_cut($str_cut,$length)
    {
      if (strlen($str_cut) > $length)
      {
        for($i=0; $i < $length; $i++)
        if (ord($str_cut[$i]) > 128)  $i++;
        $str_cut = substr($str_cut,0,$i)."..";
      }
      return $str_cut;
    }
    ?>

**

**



    1.//字符串的反转函数
    **$str='hello';//---->olleh
    echo strrev($str).'<br />';//这是系统提供的函数

    //下来自己写一个函数来实现反转
    $strArr = str_split($str);//Array ( [0] => h [1] => e [2] => l [3] => l [4] => o )
    $str1='';
    for($i=count($strArr)-1; $i>=0; $i--){

        $str1.=$strArr[$i];
    }
    echo $str1;

    **2.//获取文件的后缀名 .jpg或者jpg都可以
    **$file='abc.exe.jpg';

    echo strrchr($file,'.').'<br />';//这个是使用的系统函数,查找的文件名

    echo strrev(strstr(strrev($file),'.',true)).'<br />';//strstr()返回的是字符串首次出现,加上true表示返回的是. 之前的字符串

    echo substr($file,strrpos($file,'.')).'<br />';//strrpos()返回的是最后一次.出现的位置,然后在进行截取

    $strArr=explode('.',$file);
    echo $strArr[count($strArr)-1].'<br />';//explode()函数将字符串按点分割成一个数组
    //echo array_pop($strArr).'<br />';
    //echo end($strArr).'<br />';

    echo pathinfo($file,PATHINFO_EXTENSION).'<br /> ';//pathinfo()函数返回的是文件的路径的信息

    echo strrev(substr(strrev($file),0,strpos($file,'.'))).'<br /> ';

    **3.//将1234567890----->1,234,567,890
    **$str='1234567890';
    $strArr=str_split(strrev($str),3);
    echo strrev(implode(',',$strArr)).'<br />';//---->1,234,567,890
 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例