php学习笔记之字符串常见操作总结

Margaret ·
更新时间:2024-11-14
· 783 次阅读

本文实例讲述了php字符串常见操作。分享给大家供大家参考,具体如下:

字符串的定义

可以用单引号或双引号来定义字符串

<?php $str = "hello"; $str = 'hello'; >?

heredoc和nowdoc定义大段字符串

区别:和单引号与双引号定义字符串的区别相同

<?php //heredoc的使用 $str3 = <<<MARK hello world! ok;$a puzhong! MARK; echo $str3."<br/>"; //nowdoc的使用 $str4 = <<<'MARK' hello world! ok;$a puzhong! MARK; echo $str4."<br/>"; ?>

单引号和双引号的区别

1)转义区别:单引号转义情况:\\、\',其他全部原样输出
双引号转义情况:\,、\”、\n、\r、\t等

2)速度区别:单引号中不能加载变量,而双引号中可以加载变量
速度上,单引号要快于双引号

字符串的常用函数

1)计算字符串的长度
strlen():按照字符串占用的字节数来计算长度
mb_strlen():按照编码来计算字符串的长度

<?php $str = "hello"; $str2 = "中国123"; echo strlen($str)."<br/>"; //输出5 echo strlen($str2)."<br/>";//输出9,utf8字符编码一个汉字占3个字节 echo mb_strlen($str2,"utf-8")."<br/>";//输出5,按照u8编码,计算字符的长度 ?>

2)计算子字符串的位置函数

strpos():区分大小写进行查找子串首次的出现的位置
stripos():不分区大小写进行查找子串首次出现的位置
strrpos():区分大小写进行查找子串最后一次的出现的位置
strripos():不区分大小写进行查找子串最后一次的出现的位置

<?php $str = "aAbBcdefgAa"; $char = "A"; echo strpos($str, $char)."<br/>";//输出1,区分大小写 echo stripos($str,$char)."<br/>";//输出0,不区分大小写 echo strrpos($str,$char)."<br/>";//输出9,区分大小写 echo strripos($str, $char)."<br/>";输出10,//不区分大小写 ?>

3)替换字符串函数

str_replace():区分大小写替换字符串中的内容
str_ireplace():不分区大小写替换字符串中的内容
strtr():成批地进行替换(可以使用数组的某种对应关系)
substr_replace():按照字符串的位置和指定的长度来替换字符串中的内容

<?php $str = "hi,Fuck"; echo str_replace("fuck","f**k",$str)."<br/>";//输出:hi,Fuck,区分大小写,所以没有找到要替换的内容 echo str_ireplace("fuck", "f**k", $str)."<br/>";//输出:hi,f**k,不区分大小写 $str = "男人,女人,男孩,女孩"; echo strtr($str, array("男"=>"女","女"=>"男"));//输出:女人,男人,女孩,男孩 $str = "hello,webbc,welcome"; echo substr_replace($str,"webxx",6,5);//输出:hello,webxx,welcome ?>

4)截取子字符串函数

substr():按照起始位置和指定长度来截取字符串

<?php $str = "hello,webbc,welcome!"; echo substr($str,6,5)."<br/>";//输出:webbc echo substr($str,6,-1)."<br/>";//输出:webbc,welcome,负数表示结束位置从后往前数 echo substr($str,-8,-1);//输出:welcome,负数表示起始位置从后往前数 ?>

5)合并/拆分字符串

explode():将字符串按照某个字符拆分成数组
implode():将数组按照某个字符合并成字符串

<?php $str = "勇士,马刺,雷霆,快船,开拓者,小牛,灰熊,火箭"; $arr = explode(",",$str); var_dump($arr); /* 输出:array 0 => string '勇士' (length=6) 1 => string '马刺' (length=6) 2 => string '雷霆' (length=6) 3 => string '快船' (length=6) 4 => string '开拓者' (length=9) 5 => string '小牛' (length=6) 6 => string '灰熊' (length=6) 7 => string '火箭' (length=6) */ echo implode($arr,"-");//输出:勇士-马刺-雷霆-快船-开拓者-小牛-灰熊-火箭 ?>

6)处理空格

ltrim():删除左导空格
rtrim():删除右导空格
trim():删除左导和右导空格

<?php $str = " hello world "; echo ltrim($str)."a"."<br/>";//输出:hello world a echo "a".rtrim($str)."<br/>";//输出:a hello world echo trim($str)."<br/>";//输出:hello world ?>

7)字符串转义函数

addslashes():对特殊字符进行转义
stripslashes():将转义过的字符还原

<?php $str = "Is your ' name O'reilly?"; $a = addslashes($str); echo $a;//输出:Is your \' name O\'reilly? echo stripslashes($a);//输出:Is your ' name O'reilly?

8)HTML和字符串的转换

htmlspecialchars():将字符串转换成HTML实体
htmlspecialchars_decode():将HTML实体转换成字符串

<?php $str = "<b>我是加粗  字体</b>"; echo $str; //输出:我是加粗 字体 $htmlstr = htmlspecialchars($str); echo $htmlstr;//输出:<b>我是加粗  字体</b> echo htmlspecialchars_decode($htmlstr);//输出:我是加粗 字体 ?>

9)检索字符串

strstr():查找字符串的首次出现
substr_count():计算字串出现的次数

<?php $str = 'name@example.com'; echo strstr($str, '@'); //输出:@example.com $str = 'This is a test'; echo substr_count($str, 'is'); //输出:2 ?>

10)字符串的转换函数

strtolower():全部转换为小写
strtoupper():全部转换为大写
ucfirst():将字符串的首字母转换为大写
ucwords():将字符串的每个单词的首字母大写

<?php $str = "i haVe a Dream"; echo strtolower($str)."<br/>";//输出:i have a dream echo strtoupper($str)."<br/>";//输出:I HAVE A DREAM echo ucfirst($str)."<br/>";//输出:I haVe a Dream echo ucwords($str)."<br/>";//输出:I HaVe A Dream ?>

更多关于PHP相关内容感兴趣的读者可查看本站专题:《php常用函数与技巧总结》、《php字符串(string)用法总结》、《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家PHP程序设计有所帮助。

您可能感兴趣的文章:PHP中文处理 中文字符串截取(mb_substr)和获取中文字符串字数PHP preg_replace() 正则替换所有符合条件的字符串php中利用explode函数分割字符串到数组PHP通过iconv将字符串从GBK转换为UTF8字符集PHP字符转义相关函数小结(php下的转义字符串)php字符串截取的简单方法PHP中去掉字符串首尾空格的方法php 字符串中是否包含指定字符串的多种方法PHP 查找字符串常用函数介绍php字符串截取问题PHP字符串的连接的简单实例



php学习 字符串 PHP 字符

需要 登录 后方可回复, 如果你还没有账号请 注册新账号