本节课主要学习了一些常用字符串函数。
1:实例演示substr(),strstr(),strpos()函数
<?php //感恩 //认真的人该变了自己,坚持的人改变了命运! //日行一善,改变命运! /** * 三个最基本最常用的子串查询函数 */ //1. substr($str, $offset, $length):只知道要获取子串的位置,精确查询 $str = 'China is one of the best countries!'; // substr(), 索引从6开始的剩余内容,根据位置查询 echo substr($str, 6), '<br>'; echo substr($str, 6, 4), '<br>'; // 区间查询,11开始取4个 echo substr($str, -3), '<br>'; //strstr($str1, $str2,bool) $str2 = 'China is one of the best countries!'; // 查询@是否存在,默认返回@以及后面的内容 echo strstr($str2, 'one'), '<br>'; // 传入第三个参数:true,仅返回@符之前的内容(不包含@) echo strstr($str2, 'one', true), '<br>'; // strpos($str1, $str2, $start): 根据内容查询,返回字符串首次出现的位置 echo strpos($str2, 'best');
点击 "运行实例" 按钮查看在线实例
2: 实例演示str_replace(), substr_replace()
<?php //感恩,认真的人该变了自己,坚持的人改变了命运! //日行一善,改变命运! // str_replace(), substr_replace() $str = '中国文化是世界上最好的文化之一!'; //1.str_replace() echo str_replace('中国文化', '中国传统文化', $str), '<br>'; //删除式替换 echo str_replace('文化', '', $str), '<br>'; // str_ireplace(): 忽略大小写的替换 echo '<hr>'; // substr_replace() echo substr_replace($str, '孝敬是最好的美德之一', 0), '<br>'; echo substr_replace($str, '孝敬是最好的美德之一', 0, strlen($str)), '<br>'; echo substr_replace($str, '古文化 ', 13, 0), '<br>'; echo substr_replace($str, '孝养父母', 13, 3), '<br>'; // 删除式替换 echo substr_replace($str, '', 6, 3);
点击 "运行实例" 按钮查看在线实例
3: 实例演示: usort()二维数组的排序
<?php //感恩,认真的人该变了自己,坚持的人改变了命运! //日行一善,改变命运! echo '<pre>'; //升序 $arr=[1,5,4,7,9,10,41,33]; sort($arr); //echo var_dump($arr); //降序 $arr = [1, 5, 4, 7, 9, 10, 41, 33]; rsort($arr); //echo var_dump($arr); //回调 $arr = [1, 5, 4, 7, 9, 10, 41, 33]; usort($arr,function($var1,$var2){ $res=$var1-$var2; if($res<0){ return 1; }elseif($res>0){ return -1; }else{ return 0; } }); echo var_dump($arr); //多维数组排列 $stu=[ ['name' => 'A', 'days'=>900], ['name' => 'B', 'days' =>190], ['name' => 'C', 'days' =>280], ]; var_dump($stu); usort($stu,function($m,$n){ return strcmp($m['days'],$n['days']); }); //var_dump($stu); echo '排序之后:', var_export($stu, true), '<hr>';
点击 "运行实例" 按钮查看在线实例
4、总结
通过本节课的学习,了解了字符串的一些函数
(1)字符串过滤与填充
trim(),ltrim(), rtrim()
str_pad()
(2)字符串的大小写转换
strtolower()
strtoupper()
ucfirst()
ucwords()
应用场景:
应用1: 将文件统一转为小写,实现跨平台(Linux是区分大小写)
应用2.将要进行判断的字符串转为统一的格式