批改状态:合格
老师批语:
将字符转换为 HTML 转义字符
<?php$str = '<a href="http://www.baidu.com"></a>';// 输出: <a href="http://www.baidu.com"></a>gt;;echo htmlentities($str);
将特殊的 HTML 实体转换回普通字符
<?php$str = "<p>this -> "</p>\n";//输出 <p>this -> "</p>echo htmlspecialchars_decode($str);
将特殊字符转换为 HTML 实体
<?php$str = htmlspecialchars("<a href='www.baidu.com'>百度一下</a>",ENT_QUOTES);//输出 <a href='www.baidu.com'>百度一下</a>gt;//只支持 " ' > < & 五种echo $str;
计算两个字符串之间的编辑距离
<?php//编辑距离,是指两个字串之间,通过替换、插入、删除等操作将字符串str1转换成str2所需要操作的最少字符数量。$str1 = "我是百度";$str2 = "我是小百度";//中文在utf-8中占3个字节,所以下面的结果返回3echo levenshtein($str1,$str2);
计算两个字符串的相似度
<?php$str1 = "我是百度";$str2 = "我是小百度";echo similar_text($str1,$str2);
获取字符串长度
<?php$str = "my name is liming";// 长度包括空格,返回17echo strlen($str);
从字符串中去除 HTML 和 PHP 标记
<?php$text = '<p>我是张一山</p><a href="#fragment">标签和属性统统会被删除</a>';echo strip_tags($text);echo "<hr>";// 使用可选的第二个参数指定不被去除的字符列表。比如:允许<a>echo strip_tags($text, '<a>');
在字符串中查找一组字符的任何一个字符
<?php$text = '鲁智深是梁山好汉Boy';// 输出 "智深是梁山好汉" 因为'深'先被匹配echo strpbrk($text,'是深');// 输出 "Boy" 因为该函数区分大小写echo strpbrk($text,'B');
查找指定字符在字符串中的最后一次出现
<?php$text = 'I am a good boy';// 返回 "a good boy"echo strrchr($text,'a');
标记分割字符串
<?php$text = 'I am a good boy';//仅第一次调用 strtok 函数时使用 string 参数。后来每次调用 strtok,都将只使用 第二个参数// 使用空格字符将这句话分割成独立的单词,第一次返回 I,第二个返回 am 依次类推echo strtok($text,' ') , '<hr>';echo strtok(' '),'<hr>';echo strtok(' '),'<hr>';echo strtok(' '),'<hr>';
将字符串转化为小写
<?php$text = 'I am A good boy';//返回 "i am a good boy"echo strtolower($text);
将字符串转化为大写
<?php$text = 'I am A good boy';//返回 "I AM A GOOD BOY"echo strtoupper($text);
删除字符串的两段空格
<?php$text = ' I am A good boy ';//返回 "I am A good boy"echo trim($text);
删除字符串的左端空格
<?php$text = ' I am A good boy ';//返回 "I am A good boy "echo ltrim($text);
删除字符串的右端空格
<?php$text = ' I am A good boy ';//返回 " I am A good boy"echo rtrim($text);
以千位分隔符方式格式化一个数字
<?php$num = 123456.12;// 返回 "123,456"// 只提供第一个参数,小数部分会被去掉 并且每个千位分隔符都是英文小写逗号","echo number_format($num),'<hr>';// 返回 "123,456.12"// 如果提供两个参数,将保留小数点后的位数到你设定的值echo number_format($num,2),'<hr>';// 返回 "123#456_12"// 如果提供了四个参数,小数点被替换为第三个参数,千位分隔符替换为第四个参数echo number_format($num,2,'_','#');
将字符串解析成多个变量
<?php$str = 'id=5&name=zhangsan';parse_str($str, $arr);echo $arr['id'];echo $arr['name'];
str_replace()的忽略大小写版本
<?php$str = 'My name is Lisi';// 返回 "your name is Lisi"echo str_ireplace('my','your',$str);
strstr 函数的忽略大小写版本
<?php$str = 'My name is Lisi';// 返回 "is Lisi" 默认返回查找到的字符串及之后所有字符echo stristr($str,'IS');// 返回 "My name " 第三个参数为ture 返回查找字符串之前所有字符echo stristr($str,'IS',true);
反转字符串
<?php$str = 'shang hai';// 返回 "iah gnahs"echo strrev($str);
学习小结:发现部分字符串函数对中文不友好,直接使用会出错,需要通过其它方法实现。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号