PHP字符串操作常用函数

/*

* 确定字符串长度

* int strlen(string str)

* 比较两个字符串

* 1、strcmp函数对两个字符串进行二进制安全的比较,并区分大小写

* int strcmp(string str1,string str2)

* 2、以不区分大小写的方式比较两个字符串

* int strcasecmp(string str1,string str2)

* 3、求两个字符串相同部分

* int strspn(string str1,string str2)

* 4、求两个字符串的不同部分

* int strcspn(string str1,string str2)

* 处理字符串大小写

* 1、将字符串全部转换为小写

* string strtolower(string str)

* 2、将字符串全部转化为大写

* string strtoupper(string str)

* 3、将字符串第一个字符大写

* string ucfirst(string str)

* 4、将字符串中的每个单词变成大写

* string ucword(string str)

* 字符串与HTML相互转换

* 1、将换行符转换为HTML终止标记

* string bl2br(string str)

* 2、将特殊字符转换wieldHTML等价形式

* string htmlentities(string str[,int quote_style[,int charset]])

* 3、使用特殊的HTML字符用于其他目的

* string htmlspecialchars(string str[,int quote_style[,string charset]])

* 4、将文本转换为HTML等价形式

* array get_html_translaction_table(int table[,int quote_style])

* 5、创建一个自定义的转换清单

* string strtr(string str,array replacements)

* 6、将HTML转换为纯文本

* string strip_tags(string str[,string allowable_tags])

* 正则表达式函数的替代函数

* 1、strtok函数根据预定义的字符串列表来解析字符串

* string strtok(string str,string tonens)

* 2、根据预定义的定界符分析字符串

* array explode(string separator,string str[,int limit])

* 3、将数组转换为字符串

* string implode(string delimiter, array array)

* 4、解析复杂的字符串

* int strpos(string str,string substr[,int offset])

* 5、找到字符串的最后一次出现

* int strrpos(string str,char substr[,offset])

* 6、用另外一个字符串替代字符串的所有实例

* mixed str_replace(string occurrence,mixed replacement,mixed str[,int count])

* 7、获取字符串的一部分strstr返回字符串中预定义字符串第一次出现开始的剩余部分

* string strstr(string str,string occurrence)

* 8、根据预定义的偏移返回字符串一部分

* string substr(string str,int start[,ing length])

* 9、确定字符串出现的频率

* int substr_count(string str,string substring)

* 10、用另一个字符串替换一个字符串的一部分

* string substr_replace(string str,string replacement,int start[,int length])

* 填充和剔除字符串

* 1、从字符串开始出裁剪字符

* string ltrim(string str[,string charliset])

* 2、从字符串结尾裁剪字符

* string rtrim(string str[,string charliset])

* 3、从字符串两端裁剪字符

* string trim(string str[,string charliset])

* 4、填充字符串

* string str_pad(string str,int length[,string pad_string[,int pad_type]])

* 字符和单词计数

* 1、字符串中字符计数

* mixed count_chars(string str[,mode])

* 2、字符串中单词总数计数

* mixed str_word_count(string str[,int format])

*/

 

一、strstr — 查找字符串的首次出现

string strstr ( string $haystack , mixed $needle [, bool $before_needle = false ] )
注1:$haystack是当事字符串,$needle是被查找的字符串。该函数区分大小写。
注2:返回值是从needle开始到最后。
注3:关于$needle,如果不是字符串,被当作整形来作为字符的序号来使用。
注4:before_needle若为true,则返回前东西。

复制代码代码如下:
<?php
$email = ‘yuxiaoxiao@example.com’;
$domain = strstr($email, ‘@’);
echo $domain; // 打印 @example.com
$user = strstr($email, ‘@’, true); // 从 PHP 5.3.0 起
echo $user; // 打印 yuxiaoxiao
?>

二、stristr strstr不区分大小写的版本
三、strpos -查找字符串首次出现的位置

int strpos ( string $haystack , mixed $needle [, int $offset = 0 ] )
注1:可选的 offset 参数可以用来指定从 haystack 中的哪一个字符开始查找。返回的数字位置是相对于 haystack 的起始位置而言的。
四、substr -返回字符串的子串

string substr ( string $string , int $start [, int $length ] )
$rest = substr(“abcdef”, -1); // 返回 “f”

注1:如果 start 是非负数,返回的字符串将从 string 的 start 位置开始,从 0 开始计算。例如,在字符串 “abcdef” 中,在位置 0 的字符是 “a”,位置 2 的字符串是 “c” 等等。

注2:如果 start 是负数,返回的字符串将从 string 结尾处向前数第 start 个字符开始。

注3:如果 string 的长度小于或等于 start,将返回 FALSE

length

注4:如果提供了正数的 length,返回的字符串将从 start 处开始最多包括 length 个字符(取决于 string 的长度)。

注5:如果提供了负数的 length,那么 string 末尾处的许多字符将会被漏掉(若 start 是负数则从字符串尾部算起)。如果 start 不在这段文本中,那么将返回一个空字符串。

注6:如果提供了值为 0,FALSENULL 的 length,那么将返回一个空字符串。

注7:如果没有提供 length,返回的子字符串将从 start 位置开始直到字符串结尾。

复制代码代码如下:
<?php
$rest = substr(“abcdef”, 0, -1); // 返回 “abcde”
$rest = substr(“abcdef”, 2, -1); // 返回 “cde”
$rest = substr(“abcdef”, 4, -4); // 返回 “”
$rest = substr(“abcdef”, -3, -1); // 返回 “de”
?>

五、strrchr -查找指定字符在字符串中的最后一次出现

string strrchr ( string $haystack , mixed $needle )

该函数返回 haystack 字符串中的一部分,这部分以 needle 的最后出现位置开始,直到 haystack 末尾。

六、strripos -计算指定字符串在目标字符串中最后一次出现的位置(不区分大小写)
七、stripos -查找字符串首次出现的位置(不区分大小定)
八、strrpos -计算指定字符串在目标字符串中最后一次出现的位置