截取字符串是我们经常会面临的一个问题,要取字符串中的指定字符或者截取字符串的长度等,PHP自带截取字符串函数substr,下面请看青岛星网跟大家分享:PHP截取字符串的函数使用方法。
substr() 函数返回字符串的一部分。注释:如果 start 参数是负数且 length 小于或等于 start,则 length 为 0。
substr() 函数的定义与用法
substr(string,start,length)
substr()函数的参数描述
string 必需。规定要返回其中一部分的字符串。
start 必需。规定在字符串的何处开始。正数 - 在字符串的指定位置开始负数 - 在从字符串结尾开始的指定位置开始0 - 在字符串中的第一个字符处开始。
length 可选。规定被返回字符串的长度。默认是直到字符串的结尾。正数 - 从 start 参数所在的位置返回的长度负数 - 从字符串末端返回的长度。
<?php //构造字符串 $str = "wwwqdxwnetzhuanzhuddddddsadsasads"; 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." "; ?>
特别说明:substr() 函数只能处理英文、数字;不能截取中文混排的哦
下面我们看一个自己编写的PHP截取字符串函数,支持中英文混排截取哦。
<?php 这/* ------------------------------------------------------ 参数: $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; } ?>
青岛星网总结:第一种介绍的适合PHP初学者学习了解substr()函数,第二种比较适合工作中遇到的复杂情况截取哦。通过上面的学习,相信小伙伴对PHP的字符串截取函数也有了一定的认识,上面的学习是不是很简单哦。