str_repeat () 重复一个字符串
$a = str_repeat('abcx',2);
echo $a;//abcxabcx
sprintf() 返回根据格式化字符串生成的字符串
$number = 2;
$str = "Shanghai";
$txt = sprintf("There are %u million cars in %s.",$number,$str);
echo $txt;//There are 2 million cars in Shanghai.
addslashes() 使用反斜线引用字符串 (只在 ‘ “ \ 前添加\ )
$str = addslashes('Shanghai is the "biggest" \ city in China.');
echo($str);//Shanghai is the \"biggest\" \\ city in China.
strlen($str);//返回字符串长度
echo strlen('123123 123')."\n";//10
echo strlen('嘿嘿嘿');//9
mb_strlen($str) 可以返回中文字符长度;
echo mb_strlen('我','gbk')."\n";//2
echo mb_strlen('我我','gbk')."\n";//3
echo mb_strlen('我我我','gbk')."\n";//5
echo mb_strlen('我我我我','gbk');//6
echo mb_strlen('wo 我');//4
echo mb_strlen('wo 我','utf8');//4
//gbk 每个中文占1.5个长度 urf8 1个长度 GB2312 2个长度
strtolower($str);//字母转小写
strtoupper($str);//字母转大写
ucwords($str);//每一个单词的首字母转大写
ucfirst($str);//首字母转大写
lcfirst($str) 首字母转小写
str_replace(‘a’,‘b’,$str);//b替换$str 中的a 区分大小写 ;
echo str_replace('a','b','abcabcaabc',$count);//bbcbbcbbbc
echo $count;//4 //记录替换几次
str_ireplace(‘a’,‘b’,$str);//替换 不区分大小写
htmlentities(string,flags,character-set,double_encode) 将字符转换为 HTML 转义字符
string 必需。规定要转换的字符串。
flags 可选。规定如何处理引号、无效的编码以及使用哪种文档类型。
可用的引号类型:
ENT_COMPAT - 默认。仅编码双引号。
ENT_QUOTES - 编码双引号和单引号。
ENT_NOQUOTES - 不编码任何引号。
无效的编码:
ENT_IGNORE - 忽略无效的编码,而不是让函数返回一个空的字符串。应尽量避免,因为这可能对安全性有影响。
ENT_SUBSTITUTE - 把无效的编码替代成一个指定的带有 Unicode 替代字符 U+FFFD(UTF-8)或者 FFFD; 的字符,而不是返回一个空的字符串。
ENT_DISALLOWED - 把指定文档类型中的无效代码点替代成 Unicode 替代字符 U+FFFD(UTF-8)或者 FFFD;。
规定使用的文档类型的附加 flags:
ENT_HTML401 - 默认。作为 HTML 4.01 处理代码。
ENT_HTML5 - 作为 HTML 5 处理代码。
ENT_XML1 - 作为 XML 1 处理代码。
ENT_XHTML - 作为 XHTML 处理代码。
character-set 可选。一个规定了要使用的字符集的字符串。
double_encode 可选。布尔值,规定是否编码已存在的 HTML 实体。
TRUE - 默认。将对每个实体进行转换。
FALSE - 不会对已存在的 HTML 实体进行编码。
$str = "Bill & 'Steve'";
echo htmlentities($str, ENT_COMPAT);//Bill & 'Steve' // 只转换双引号
echo "\n";
echo htmlentities($str, ENT_QUOTES); //Bill & 'Steve'// 转换双引号和单引号
echo "\n";
echo htmlentities($str, ENT_NOQUOTES);//Bill & 'Steve' // 不转换任何引号
htmlspecialchars(string,flags,character-set,double_encode)
//字符串转换为html 实体 ENT_COMPT(默认只编译双引号)ENT_QUOTES单引号双引号都编译,ENT_NOQUOTES不编译任何引号
htmlspecialchars_decode(string,flags,character-set,double_encode)将特殊的 HTML 实体转换回普通字符
trim($str);//删除字符串前后(左右)空格
ltrim($str);//只删除字符串左侧的空格
rtrim($str);//只删除字符串右侧的空格
//trim加第二个参数 就是移除指定的字符集 如ltrim($str,‘0…9’) 移除左侧数字开头的字符
strpos($str,'a’,1);//字符串a 在$str 第一次出现的位置 索引1开始 没有出现返回false 区分大小写
stripos($str,'a’);//同上 但是不区分大小写
strrpos($str,'a’);//字符串a 在$str 最后一次出现的位置 索引0开始 没有出现返回false 区分大小写
strripos($str,'a’);//同上 但是不区分大小写
substr($str,0,3);//截取字符串 $str 的第一个字符 截取长度3 长度不填默认截取到最后 参数2为负数则倒数,一个中文3个长度
mb_substr($str,0,3,‘utf8’) //同上 增加参数四 中文长度根据字符集决定
strstr($str,‘a’);//截取字符串 $str 中的第一个字符’a’后的字符串 如 sabc -> abc
strrchr($str,‘a’);//截取字符串 $str 中最后一一个字符’a’后的字符串
strrev($str);//字符串反转 abcd->dcba
md5($str);//字符串MD5加密
str_shuffle($str);//随机打乱字符串顺序
explode(’-’,$str);//指定分隔符分割字符串 返回数组 ‘-’ 分割
implode(’-’,$str);//数组拼接字符串 与explode()相反
parse_str($str) 将字符串解析成多个变量
$str = "first=value&arr[]=foo+bar&arr[]=baz";
// 推荐用法
parse_str($str, $output);
echo $output['first']; // value
echo $output['arr'][0]; // foo bar
echo $output['arr'][1]; // baz
str_split() 将字符转化为数组
$str = 'hello';
$arr = str_split($str);
$arr1 = str_split($str,2);
var_dump($arr);
echo "\n";
var_dump($arr1);
结果:
array(5) { [0]=> string(1) "h" [1]=> string(1) "e" [2]=> string(1) "l" [3]=> string(1) "l" [4]=> string(1) "o" }
array(3) { [0]=> string(2) "he" [1]=> string(2) "ll" [2]=> string(1) "o" }
strip_tags() 从字符串中去除 HTML 和 PHP 标记
$str = '';
echo strip_tags($str,'');
//hahaha
str_pad() 字符串填充
$str = 'abc';
echo str_pad($str,5);
结果:
'abc '
$str = 'abc';
echo str_pad($str,10,"+");
结果:
abc+++++++
substr_count()计算字串出现的次数
$text = 'This is a test';
echo substr_count($text, 'is'); // 2
wordwrap打断字符串分行
$str = 'a b abc dabcde s f d s f f d s f a s d f a';
echo wordwrap($str,5,"\n",true);
echo "\n-----\n";
echo wordwrap($str,5,"\n");
/*
a b
abc
dabcd
e s f
d s f
f d s
f a s
d f a
-----
a b
abc
dabcde
s f d
s f f
d s f
a s d
f a
*/