1.比较运算符
一般运算符“!=”或“==”可以用于比较两个对象是否相等,这包括字符串或者非字符串,例如数组等。
例 6-5.php |
<?php$a = "good";$b = "good"; if ($a != $b){echo "不相等";}else{echo "相等";}?> |
运行结果 |
 |
例 6-6.php |
<?php$a = "good";$b = "Good"; if ($a != $b){echo "不相等";}else{echo "相等";}?> |
运行结果 |
 |
2.使用比较函数比较字符串
strcmp(),比较区分大小写的字符串。
strcasecmp(),比较不区分大小的字符串比较。
strcmp()函数内的两个字符串按照字节的ASCII码值进行比较,如果前者表后者大,则返回大于0的整数,如果前者比后者小,则返回小于0的整数,如果相等则返回0。
例 6-7.php |
1 <?php2 echo strcmp("abcdd", "aBcde");3 echo "<br>";4 echo strcmp("abCde", "abcde");5 echo "<br>";6 echo strcmp("abcde", "abcde");7 ?> |
运行结果 |
 |
3.选择性比较字符串
strncmp()和上一节介绍的strcmp()的区别就是可以指定比较的长度,例如比较前三个字符。
例 6-8.php |
<?phpecho strncmp("abcde", "aBcde", 4);echo "<br>";echo strncmp("abcdE", "abcde", 4);?> |
运行结果 |
 |
运行结果
程序说明:在比较函数中有一个整数值4,代表比较的字符序数。
4.字符串的查找和匹配
strstr()和strrchr函数可以查找字符串。
语法格式
string strstr(string $haystack,string $needle)
string strrchr(string $haystack,string $needle)
参数$haystack为被查找字符串,参数$needle为要查找字符串。两个函数使用方法完全相同,但作用有所区别,strstr()函数用来查找要查找在被查找字符串中第一次出现的位置,并且返回从此位置开始到被查找字符串结束的部分。strrchr()函数查找字符串在被查找字符串中最后一次出现的位置,并返回从此位置开始到被查找字符串结束的字符串。
例 6-9.php |
1 <?2 $needle = "you";3 $str = "I love you!";4 if (strstr($str, $needle)){5 echo "第一个字符串里面有 $needle<br>";6 }7 else8 {9 echo "第一个字符串里面没有 $needle<br>";10 }11 $needle = "b";12 $str1 = "acdefg"; 13 if (strrchr ($str1, $needle)) {14 15 echo "<br>第二个字符串里面有 $needle";16 }17 else18 {19 echo "<br>第二个字符串里面没有 $needle<br>";20 }21 ?> |
运行结果 |
 |
5.查找字符串出现的位置
substr_count()用于查找字符串出现的次数,语法结构如下:
int substr_count(string $haystack,string $needle[,int $offset[,int $length]]
substr_count()用来统计参数$needle在另一个参数$haystack中出现的次数,可选参数$offset和$length分别表示查找的起点和长度并且返回一个整数。
例 6-10.php |
1 <?php2 $text = 'President Barack Obama and President Nicolas Sarkozy of France listened to national anthems during a ceremony in Caen, France, on Saturday.';3 echo strlen($text)."<br>";4 echo substr_count($text, 'an')."<br>";5 echo substr_count($text, 'an', 10)."<br>";6 echo substr_count($text, 'an', 10, 20)."<br>";7 ?> |
运行结果 |
 |
程序说明:第3行输出整个字符串的长度,第4行统计an在变量$test中出现的次数,第5行从第10个字符开始统计an出现的次数,第6行查找第10个字符后20个字符中是否出现an。
6.字符串的替换
str_replace函数用于字符串替换,语法结构如下:
string str_replace(string $str1,string $str2,string $str2)
参数为要替换的字符串,参数$str2为新字符串,参数$str3为原字符串。函数的作用是将原字符串$str3中字符串$str1,用新字符串$str2替换。
例 6-11.php 使用函数str_replace()替换语句中的isn’t为is,另外将$str中的特殊字符替换为换行符。 |
1 <?php2 echo str_replace("isn't", "is", "The short-odds favorite isn't a safe bet");3 4 echo "<br>";5 $str = "Line one\nLine two\rLine three\r\nLine four\n";6 $order = array("\r\n", "\n", "\r");7 $replace = '<br />';8 $newstr = str_replace($order, $replace, $str);9 echo $newstr;10 ?> |
运行结果 |
 |
程序说明:第2行将字符串isn’t替换为is。第3-6行定义变量$str,第7行替换特殊字符为换行符。
7.MD5算法
注:MD5 Message-Digest algotithm 5。MD5通常可以理解为是一种加密算法,在计算机领域有着很广泛的应用。
MD5语法格式:
String MD(string $str)
参数$str既是要加密的字符串,函数返回经过MD5加密的密文。
例 6-12.php |
1 <?php2 $encrypt = '999999';3 echo "明文字符串:$encrypt <br />";4 $md_text = MD5 ($encrypt);5 echo "MD5加密后的值为:$md_text";6 ?> |
运行结果 |
 |
文章说明:PHP有很多处理字符串的方法和函数,我们只能介绍一些常用的函数,本站将逐步搜集整理更多函数和它们的用法,以后介绍给各位读者。作者信箱:peng@tacsoft.cn,欢迎来信,谢谢大家。 |