会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
hotty
博客园
首页
博问
闪存
新随笔
订阅
管理
PHP字符串处理(3)-字符串的比较、替换和加密
原文:
http://www.tacsoft.cn/3rd.php?blogid=1&pid=196
PHP字符串处理(3)-字符串的比较、替换和加密
06-06 by peng
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 <?php 2 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
<?php echo 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 else 8 { 9 echo "第一个字符串里面没有 $needle<br>"; 10 } 11 $needle = "b"; 12 $str1 = "acdefg"; 13 if (strrchr ($str1, $needle)) { 14 15 echo "<br>第二个字符串里面有 $needle"; 16 } 17 else 18 { 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 <?php 2 $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 <?php 2 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 <?php 2 $encrypt = '999999'; 3 echo "明文字符串:$encrypt <br />"; 4 $md_text = MD5 ($encrypt); 5 echo "MD5加密后的值为:$md_text"; 6 ?>
运行结果
文章说明:PHP有很多处理字符串的方法和函数,我们只能介绍一些常用的函数,本站将逐步搜集整理更多函数和它们的用法,以后介绍给各位读者。作者信箱:peng@tacsoft.cn,欢迎来信,谢谢大家。
posted on
2012-01-29 14:46
hotty
阅读(
4761
) 评论(
0
)
收藏
举报
刷新页面
返回顶部