1.字符串输出函数
1.1 echo 输出一个或多个字符串,语言结构,不是函数
echo 'aaaaaaaaaaaaaaaa';
1.2 print 输出字符串,语言结构,不是函数
print 'ccccccccccccccccc';
1.3 die 输出一条消息,并退出当前脚本,语言结构,不是函数
die('this is error'); //不能使用die(11111111111);输出字符串需用引号
注意:die与exit区别:die()是exit()函数的别名
1.4 print_r 打印变量的易于理解的信息。可以打印数组。函数
$arr = array('a'=>'aaaaaaaa', 'b'=>'bbbbbbbbb'); print_r($arr);
1.5 var_dump 打印变量的类型和值,可以打印字符串 数组 布尔值等 函数
2.去除空格和字符串填充函数
2.1 ltrim 删除字符串开头的空白字符或其他字符
$a = 'abcdefg'; ltrim($a, 'ab'); //会截去ab字符
2.2 rtrim 删除字符串末尾的空白字符或其他字符
2.3 trim 删除字符串收尾的空白字符或其他字符
2.4 str_pad 使用另一个字符串填充字符串为指定长度
$a = 'dddddddddddd'; str_pad($a, 20, '+-+-+-', STR_PAD_BOTH); //第一个参数是当前字符串,第二个参数是要填充的字符串长度,第三个是要填充的字符串,第四个是填充的方向(默认是STR_PAD_RIGHT 从右边填充,其他选项有 STR_PAD_LEFT 从左边填充,STR_PAD_BOTH 从两边填充)
3.字符串大小写的转换
3.1 strtolower 将字符串全部变成小写
3.2 strtoupper 将字符串全部变成大写
3.3 ucfirst 将整个字符串的首字母变成大写
3.4 ucwords 将每个字的首字母变成大写
4.与HTML相关的字符串格式化函数
4.1 nl2br 将字符串中的“\n”转化为html标签“<br />”
4.2 htmlspecialchars 把指定特殊符号转化为实体
$str = "This is <b>strong font</b>"; echo $str; //这里会在浏览器显示加粗的strong font echo(htmlspecialchars($str)); //这里不加粗显示 This is <b>strong font</b>
4.3 htmlentities 可以将所有的非ASCII码转换成对应实体代码
4.4 strip_tags 删除HTML标签的函数
$str3 = "<h1>这是个标题</h1><p>这是一个段落<b>这里是加粗的内容</b></p>"; strip_tags($str3,'<p>'); //这里会删除除了<p>标签以外的其他html标签,第二个参数是不想删除的html标签
5.其他字符串格式化函数
5.1 strrev 颠倒字符串的字符顺序
5.2 strlen 获取字符串的长度
5.3 number_format 格式化数字
$str = 123456.789; number_format($str); //结果 123,57 一个参数会舍去小数点后面数字 number_format($str, 2); //结果 123,56.79 两个参数 number_format($str, 2, '.', ','); //第三个参数是小数点格式,默认是.,第四个是千位格式,默认是,。
5.4 md5 加密函数,加密后32位
6.字符串比较
6.1 strcmp 两个字符串整个比较是否相同,区分大小写,如果相同返回0,不等于返回正数或负数
6.2 strncmp 比较字符串前n个字符,区分大小写
6.3 strcasecmp 不区分大小写的全字符串比较
6.4 strncasecmp 不区分大小写的比较字符串前n个字符
6.5 strnatcmp 使用自然排序算法进行比较
7.字符串的分割与拼接
7.1 explode 将字符串分割为数组
$str10 = 'one,two,three,four'; explode(',', $str10, -2); //第一个参数是分割符,第二个是字符串 第三个可选参数数字含义:大于 0 - 返回包含最多 limit 个元素的数组 小于 0 - 返回包含除了最后的 -limit 个元素以外的所有元素的数组 0 - 返回包含一个元素的数组
7.2 implode 将一维数组的值转化为字符串
$str11 = array('hello','world!','I','love','China!'); implode(' ', $str11); //第一个参数是间隔符,第二个是数组
8.字符串的查找、截取与替换
8.1 substr 截取字符串
$str12 = 'abcdefg'; substr($str12, -3, 1); /*第一个参数是字符串 第二个参数是截取的起始位置:如果 start 是非负数,返回的字符串将从 string 的 start 位置开始,从 0 开始计算。例如,在字符串 "abcdef" 中,在位置 0 的字符是 "a",位置 2 的字符串是 "c" 等等。 如果 start 是负数,返回的字符串将从 string 结尾处向前数第 start 个字符开始。 如果 string 的长度小于 start,将返回 FALSE。 第三个可选参数是截取长度:如果提供了正数的 length,返回的字符串将从 start 处开始最多包括 length 个字符(取决于 string 的长度)。 如果提供了负数的 length,那么 string 末尾处的 length 个字符将会被省略(若 start 是负数则从字符串尾部算起)。如果 start 不在这段文本中,那么将返回 FALSE。 如果提供了值为 0,FALSE 或 NULL 的 length,那么将返回一个空字符串。 如果没有提供 length,返回的子字符串将从 start 位置开始直到字符串结尾。 */
8.2 strstr 返回字符串中某字符串开始处至结束的字符串。别名:strchr( )
$str12 = 'abcdefg'; strstr($str12, ‘d’, false); //结果显示 defg ,第三个参数如果是ture 则返回前段 abc
8.3 strrchr 返回字符串中从某字符串最后出现位置开始处至结束的字符串
$str12 = 'abcdefdg'; strstr($str12,'d'); //结果为 defdg strrchr($str12, 'd'); //结果为 dg 对比可以发现与strstr不同
8.4 strpos 查找字符串中某个字符首次出现的位置,默认是从0开始
$str12 = 'abcdefdg'; $a = 'a'; $pos = strpos($str12, $a); //返回值是$a字符存在字符串的位置,默认从0开始; 如果找不到返回布尔值 false if($pos !== false){ //判断结果务必使用!==,如果使用!=可能会出现位置0时的错误 $i = $pos + 1; echo "$a 字符串中存在的位置是第 $i 位 "; }else{ echo "字符串中不存在 $a"; }
8.5 strrpos 查找字符串中某个字符最后出现的位置,默认从0开始
8.6 str_replace 字符串替换
$str12 = 'abcdefdg'; $search = array('d','f'); //查询目标可以用字符串或数组 $replace = array('k','p'); //替换内容也可以用字符串或数组 echo str_replace($search, $replace, $str12, $count); //第四个可选参数是个变量,用来存储替换的次数 echo '<br>'; echo "替换了 $count 次";