php常用字符函数实例小结
本文实例总结了php常用字符函数。分享给大家供大家参考,具体如下:
1.stringsubstr(string $string,int$start [,int $length])
函数功能:返回字符串string由start和length参数指定的子字符串。
参数:
string:输入字符串。
start:如果start是非负数,返回的字符串将从string的start位置开始,从0开始计算。如,‘abcdef'中,在位置0的为‘a',位置2为‘c';
如果start是负数,返回字符串将从string结尾处向前数第start个字符开始。
如果string的长度小于或等于start,则返回FALSE。
$rest=substr("abcdef",-1);//返回“f” $rest=substr("abcdef",-2);//返回“ef” $rest=substr("abcdef",-3,1);//返回“d”
$length:如果提供了正数的length,返回的字符串从start处开始最多包括length个字符(取决于string的长度)。
如果提供了负数的length,那么string末尾处的许多字符将会漏掉,即为从末尾处不考虑字符(可以理解我截断),如果start不在文本中,那么将返回一个空字符串。
如果提供了值为0,FALSE或NULL的length,那么将返回一个空字符串。
如果没有提供length,返回的字符串将从start的位置一直到字符结束。
$rest=substr("abcdef","0","-1");//返回abcde $rest=substr("abcdef","2","-1");//返回cde $rest=substr("abcdef","4","-4");//返回NULL $rest=substr("abcdef","-3","-1");//返回de
[]中括号代表该参数为可选参数,不设定即为默认参数。(接触php快8个月了,一直奇怪函数的参数为啥要加个中括号,今天终于忍不住百度了下!惭愧!)
2.intpreg_match(string $pattern,string$subject[,array&$matches [, int $flag=0[,int$offset=0]]])
函数功能:搜索subject与pattern给定的正则表达式的一个匹配。
参数:
$pattern:要搜索的模式,字符类型。
$subject:输入字符串。
$matches:如果提供了参数matches,它将被填充为搜索结果,$matches[0]包含完整模式匹配到的文本,$matches[1]将包含第一个捕获子组匹配到文本,以此类推。
$flags:flags可以被设置为以下标记值:
PREG_OFFSET_CAPTURE
如果传递了这个标记,对于每一个出现的匹配返回时会附加字符串偏移量(相对于目标字符串的).注意:这会改变填充到matches参数的数组,使其每个元素成为 一个由第0个元素是匹配到的字符串,第1个元素是该匹配字符串在目标字符串subject中的偏移量.
offset:
通常,搜索从目标字符串的开始未知开始.可选参数offset用于指定从目标字符串的某个未知开始搜索(单位是字节).
Note:
使用offset参数不同于向preg_match()传递按照位置通过substr($subject,$offset)截取目标字符串结果,因为pattern可以包含断言比如^,$或者(?<=x).比较:
<?php $subject="abcdef"; $pattern='/^def/'; preg_match($pattern,$subject,$matches,PREG_OFFSET_CAPTURE,3); print_r($matches); ?>
以上例程会输出:
Array ( )
<?php $subject="abcdef"; $pattern='/^def/'; preg_match($pattern,substr($subject,3),$matches,PREG_OFFSET_CAPTURE); print_r($matches); ?>
将会产生匹配
Array ( [0]=>Array ( [0]=>def [1]=>0 ) )
3.strpos(string,find,start)
string:必须,规定被搜索的字符串。
find:必须,规定要查找的字符。
start:可选,规定开始搜索的位置,默认从第一个字符开始。
该函数对大小写敏感,如不希望这样可以使用stripos()函数
例:
echostrpos("Helloworld!","wo");//输出6
4.stringdirname(stringpath)
函数功能:取得路径中的目录名。在Win32系统中,用斜线(/)或者反斜线(\)都可以;但是其它的操作系统的路径都是(/)。
$path="/etc/hostname"; $file=dirname($path);
$file为"/etc"
5.str_split(string,length)
string 必需。规定要分割的字符串。
length 可选。规定每个数组元素的长度。默认是1。
<?php print_r(str_split("Hello")); ?>
运行结果:
Array ( [0]=>H [1]=>e [2]=>l [3]=>l [4]=>o )
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。