开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第32天,点击查看活动详情
字符串操作总结
字符串替换
substr_replace
- 功能
- 函数把字符串的一部分替换为另一个字符串
- 语法
- substr_replace(string,replacement,start,length)
- 参数
- string : 必需 规定要检查的字符串
- replacement : 必需 规定要插入的字符串
- start : 必需 规定在字符串的何处开始替换
- 正数 在字符串的指定位置开始
- 负数 在从字符串结尾的指定位置开始
- 0 在字符串中的第一个字符处开始
- length : 可选 规定要替换多少个字符.默认是与字符串长度相同
- 正数 被替换的字符串长度
- 负数 从字符串末端开始的被替换字符数
- 0 插入而非替换
- demo
- 替换字符串
$a=substr_replace('ABCD1234','...',4); print_r($a);//ABCD... - 插入字符串
$b=substr_replace('ABCD1234','...',4,0); print_r($b);//ABCD...1234 - 插入字符串和规定要替换多少个字符
$c=substr_replace('ABCD1234','...',4,1); print_r($c);//ABCD...234 - 数组匹配字符串插入
$replace = array('A','BB','CCC','DDDD'); print_r(substr_replace($replace,'E',2,0));//Array ( [0] => AE [1] => BBE [2] => CCEC [3] => DDEDD )
- 替换字符串
str_replace
- 功能
- 函数替换字符串中的一些字符
- 语法
- str_replace(find,replace,string,count)
- 参数
- find : 必需,规定要查找的值
- replace : 必需,规定替换find中的值的值
- string : 必需,规定被搜索的字符串
- count : 可选,一个变量,对替换数进行计数
- demo
- 字符串替换字符串
$stringData = str_replace('world','Admin','Hello world',$i); print_r($stringData);//Hello Admin echo '替换次数:'.$i;//替换次数:1 - 字符串替换数组键值
$arrData = array('A','B','C','D_A'); print_r(str_replace('A','E',$arrData,$i));//Array ( [0] => E [1] => B [2] => C [3] => D_E ) echo '替换次数:'. $i;//替换次数:2 - 数组匹配字符串替换数组键值
$find = array('A','D'); $replace = 'E'; $arrData = array('A','B','C','D_A'); print_r(str_replace($find,$replace,$arrData,$i));//Array ( [0] => E [1] => B [2] => C [3] => E_E ) echo '替换次数:'.$i;//替换次数:3 - 数组匹配数组替换数组键值
$find = array('A','D'); $replace = array('E'); $arrData = array('A','B','C','D_A'); print_r(str_replace($find,$replace,$arrData,$i));//Array ( [0] => E [1] => B [2] => C [3] => _E ) echo '替换次数:'.$i;//替换次数:3
- 字符串替换字符串
手机号隐藏中间四位
- fun
function hideString($str = '13888888888', $to = '*', $start = 1, $end = 0) { $lenth = strlen($str) - $start - $end; $lenth = ($lenth < 0) ? 0 : $lenth; $to = str_repeat($to, $lenth); $str = substr_replace($str, $to, $start, $lenth); return $str; }
大小写
- 全部大写
- strtolower
- 全部小写
- strtoupper
- 第一个字母大写
- ucfirst
- 每一个字母大写
- ucwords
字符串数组转化
- 将字符串转为数组
- str_split
- 将一个字符串转化为数组
- str_split(string, length)
- length小于1返回false
- length为空,每个字符块为单个字符
- length小于字符串长度,返回数组中的每个元素均为一个长度为split_length的字符块
- length大于等于字符串长度,整个字符串作为一个字符块返回
- explode
- 按照某个依据将字符串分割为数组
- str_split
- 将数组转为字符串
- implode
- 将数组中的元素按某个依据组合
- implode