设为首页 收藏本站
查看: 549|回复: 0

[经验分享] PHP字符串处理函数(二)

[复制链接]

尚未签到

发表于 2017-4-4 10:48:13 | 显示全部楼层 |阅读模式
explode()
字符串分割函数,该函数会返回一个字符串被分割后的数组。
参数(共三个,一个可选):explode(分隔符,需要分割的字符串,[可选参数,整数,返回数组的最大元素个数]);
例1:
$str="this|is|a|demo";
$arr=explode("|",$str); //以|符号为分界符把字符串$str分割成了4个字符串
print_r($arr);
输出结果:
Array ( [0] => this [1] => is [2] => a [3] => demo ) //共分割成了4个字符串
例2://给定分割字符串的个数参数
$str="this|is|a|demo";
$arr=explode("|",$str,2); //以|符号为分界符把字符串$str分割成了4个字符串
print_r($arr);
输出结果:
Array ( [0] => this [1] => is|a|demo )  //根据给出的分割个数参数,把字符串分割成了2个字符串。
implode() 别名 join() //两个函数得到的运行结果一样
字符串联合函数;把一组字符串联合成一个字符串。
参数:两个,implode(联合的字串,字符串数组)
例如:
$arr=array("this","is","a","demo");
$str=implode("#",$arr); //用#号联合数组$arr中的各个字符串
echo $str;
输出结果:
this#is#a#demo //用#号联合后的一个字符串
substr()
取字符串中指定位置的部分字符串
参数:共三个,一个可选,substr(字符串,开始位置[,可选,取字符长度])
如果没有给出可选参数,将从给定的开始位置取到整个字符串的最后。如果给出,将取给定的长度的字符串。
例如:
$str="abcdefghijklmnopqrst";
$newstr=substr($str,2,5); //给定了取字符串的开始位置2和字符串需要取的长度5个
echo "$newstr";
输出结果:cdefg //从c开始向后取了5个字符。
strstr() 别名 strchr() //两个函数功能一样
参数两个,strstr(字符串a,字符串b);
返回字符串a中指定字符串b开始处至结尾的字符串,如果指定的字符串b在字符串a中多次出现,那么将返回从第一次出现的位置开始到字符串a的结尾。
例如:
$str="this is a demo";
$newstr=strstr($str,"is"); //返回$str字符串中is开始到$str结束的字符串
echo "$newstr";
输出结果:is is a demo
strpos() //返回整型数据
查找字符串中某字符最先出现的位置
参数:共3个,1个可选,strpos(被查找的字符串,查找的字符,[偏移量,查找的起始位置])
例如:
$str="this is a demo";
$n=strpos($str,"s",5); //设定了查找s字符的起始位置是第五个开始,而this中的s在第五个前面,将会被跳过
echo $n;
输出结果:6
如果没有设置偏移量例如:
$str="this is a demo";
$n=strpos($str,"s"); //没有设置偏移量,将返回this中的s的位置
echo $n;
输出结果:3
strrpos() //返回整型数据
查找字符串中某字符最后出现的位置
参数:共2个,strpos(被查找的字符串,查找的字符)
例如:
$str="this is a demo";
$n=strrpos($str,"s"); //查找$str字符串中s最后出现的位置
echo $n;
输出结果:6


strrchr() //返回一个字符串
返回字符串a中,某字符最后出现的位置到字符串a的最后位置的字符串
参数:两个,strrchr(字符串,字符)
例如:
$str="this is a demo";
$newstr=strrchr($str,"s"); //返回从$str字符串中最后一个s出现的位置到$strz末尾的字符串
echo $newstr;
输出结果:s a demo
str_pad()
字符串填补函数
参数:共4个,str_pad(需要处理的字符串,处理的长度,填充的字符,填充方向)填充方向有三个可选常量分别是:
1、STR_PAD_LEET 向左填充
2、STR_PAD_RIGHT 向右填充
3、STR_PAD_BOTH 向两边平均填充
例:
$str="abcde";
$newstr=str_pad($str,20,"@",STR_PAD_LEET); //把字符串$str向左(STR_PAD_LEET)填充到20位,不足的部分,用函数参数中设定的"@"填充。
echo $newstr;
输出结果:@@@@@@@@@@@@@@@abcde
如果,字符串长度超过了函数参数中设定的位数,将返回字符串的原型。如:
$str="abcdeefghijklmnopqrst";
$newstr=str_pad($str,20,"@",STR_PAD_LEET); //字符串$str长度大于等于20位,返回字符串的原型
echo $newstr;
输出结果:abcdeefghijklmnopqrst


==========================================================================
==========================================================================
利用字符串相关处理函数获得一个网址后面文件名的方法:
<?php
$url="http://www.uuiso.net/forum.php"; //定义网址字符串变量
$n=strrpos($url,"/")+1;  //使用strrpos()函数获得最后一个"/"的位置加1就是文件名的开始位置。
$filename=substr($url,$n); //利用substr函数获取文件名开始位置到最后位置的字符串,即需要获取的文件名
echo "$filename"; //输出文件名
?>

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-359977-1-1.html 上篇帖子: PHP+MongoDB组合来做访问统计 下篇帖子: php编码header中参数说明
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表