在之前的文章《PHP字符串学习之将字符串分成更小长度的子串》中,我们介绍了按照字符长度来分割字符串的方法。这次我们介绍介绍另一种分割字符串的方法–根据指定符号(即分割符)来拆分字符串,感兴趣的朋友可以学习了解一下~
首先我们有这样一个字符串:
$string = "Hello world Hello world";
想要根据空格来拆分字符串,输出:
Hello world Hello world
这要怎么做?简单!今天就来给大家介绍两种方法。
首先我们来看看第一种方法:
<?php $string = "Hello world Hello world"; $token = strtok($string, " "); while ($token != false) { echo "$token<br>"; $token = strtok(" "); } ?>
输出结果:
可以看出,我们使用strtok($string, " ")
根据空格来分割字符串$string,将字符串拆分为更小的子串。
但因为strtok()函数一次只从字符串中取出一些片段,所以要使用while()语句重复调用strtok()。
且strtok()函数只有第一次调用时,需要使用了 $string 参数,while循环中的strtok()仅需要 $split 参数来指定分割符(可以和第一次的不同);原因:strtok()函数会保持它自己的内部指针在字符串中的位置。如果想重置指针,可以重新将该字符串传给strtok()函数。
<?php $string = "Hello world Hello world"; $token = strtok($string, " "); while ($token != false) { echo "$token<br>"; $token = strtok("l"); } ?>
输出结果:
好了,第一种方法介绍完了。我们来看看第二种方法:
<?php $string = "Hello world Hello world"; $token = explode(" ",$string); var_dump($token); ?>
输出结果:
可以看出,我们使用explode(" ",$string)
根据空格来分割字符串$string,将字符串拆分为更小的子串,然后将这些子串组合成数组并返回。
和strtok()函数一次只从字符串中取出一些片段不同,explode()函数每次都将一个字符串全部分割成若干小块。
我们可以使用foreach语句来输出$token数组,将这些子串打印出来:
foreach($token as $value){ echo $value."<br>"; }
输出结果:
好了就说到这里了,有其他想知道的,可以点击这个哦。→ →php视频教程
最后给大家推荐一个PHP数组的免费视频教程:PHP函数之array数组函数视频讲解,快来学习吧!
以上就是PHP怎么通过给定符号来拆解字符串的详细内容,更多请关注php中文网其它相关文章!
原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/146763.html