一些简单实用的函数
strlen(string)获取字符串的长度。
trim(str,char)移除字符串两侧的空白字符或其他预定义字符。
ltrim(str,char)移除字符串左侧的空白字符或其他预定义字符。
rtrim(str,char)移除字符串右侧的空白字符或其他预定义字符。
strtolower(str)函数把字符串转换为小写。
strtoupper(str)函数把字符串转换为大写。
md5(str)函数MD5加密,默认32位
crypt(str,salt)函数使用一种单向加密算法。
str_pad(str,length,pad_str,pad_type) 函数把字符串填充为新的长度。
nl2br(str)函数在字符串中的每个新行(\n)之前插入 HTML 换行符(
或
)。
strip_tags(str[,allow])函数剥去字符串中的 HTML、XML 以及 PHP 的标签。allow规定允许不被剥去的标签。
strrev(str) 函数反转字符串。
str_shuffle(str)函数随机打乱字符串中的所有字符。
str_repeat(str,3) 函数把字符串重复指定的次数。
lcfirst(str)函数把字符串中的首字符转换为小写。
查找字符串位置相关的函数
strstr(str,search_str [,before_search]) 查找字符串在另一字符串中的第一次出现。(区分大小写)
before_search不给则返回之后的部分,为true返回出现之前的字符串部分。stristr()不区分大小写。
$str='[email protected]';
//获取邮箱域名 qq.com
$domain=trim(strstr($str,'@'),'@');
var_dump($domain);
//获取邮箱用户名 1083654785
$user=strstr($str,'@',true);
var_dump($user);
strpos(str,search_str [,start]) 查找字符串在另一字符串中 第一次 出现的位置(区分大小写)。
strrpos(str,search_str [,start]) 查找字符串在另一字符串中 最后一次 出现的位置(区分大小写)。
start规定开始查找的位置。strripos()不区分大小写。
$str='[email protected]';
//查找@出现的位置
$site=strpos($str,'@');
var_dump($site);//输出10
//查找q第一次出现的位置
$first=strpos($str,'q');
var_dump($first);//输出11
//查找q最后一次出现的位置
$last=strrpos($str,'q');
var_dump($last);//输出12
substr(str,start [,length]) 截取字符串的一部分。
start参数标志开始截取位置,0:第一个字符开始截取;正数:从字符串左边开始截取;负数:从字符串右边开始截取;
length可选,要截取的字符长度。
$str='[email protected]';
//截取前10位
var_dump(substr($str,0,10));//输出:1083654785
//从10开始截取后面所有
var_dump(substr($str,10));//输出:@qq.com
//从字符串末尾开始截取6位
var_dump(substr($str,-6));//输出:qq.com
implode([char,]$arr)将数组按(char)字符拼接成字符串。
explode(char,$arr) 将字符串按(char)字符分割为数组。
$arr=array('red','blue','green');
var_dump(implode('|', $arr));
var_dump(explode('|', implode('|', $arr)));
strtr(str,from,to) 转换字符串中特定的字符,使用from-to会格式化最短长短并且比如要转换ccc这种每个字符串相同为edu时会转成uuu,显然不是我们想要的结果。
strtr(str,array('key'=>'value'))使用数组格式可以完全转换多处。(推荐使用)
$str='[email protected]';
//只能转化2位
var_dump(strtr($str,'com','edu'));//输出:[email protected]
//全部转换
var_dump(strtr($str,array('qq'=>'163','com'=>'edu.cn')));//输出:[email protected]
substr_replace(str,replace,start [,length])函数把字符串的一部分替换为另一个字符串。
$str='[email protected]';
//从第5位开始替换5位
var_dump(substr_replace($str,'10836',5,5));//输出:[email protected]
//不给长度则从第5位开始替换之后所有
var_dump(substr_replace($str,'10836',5));//输出:1083610836
//从末尾开始替换
var_dump(substr_replace($str,'10836',-7));//输出:108365478510836