explode()与相反函数 implode() 和join()
explode()的函数原型:
array explode(string separator,string input [,int limit]); //[,int limit]是表示可选的意思
参数 | 描述 |
---|---|
separator | 必需。规定在哪里分割字符串。 |
string | 必需。要分割的字符串。 |
limit | 可选。规定所返回的数组元素的最大数目。 |
1 <?php 2 $array = "ted@tiny@tom@json"; 3 $people = explode('@',$array); 4 5 echo $people[0]."<br>".$people[1]."<br>".$people[2]."<br>".$people[3];echo "<br>"; 6 7 $peoplelimit = explode('@',$array,3); 8 9 print_r($peoplelimit);echo "<br>"; 10 11 echo implode('@',$people);echo "<br>"; 12 13 echo join('**',$people); 14 15 ?>
以下为结果:
ted tiny tom json Array ( [0] => ted [1] => tiny [2] => tom@json ) ted@tiny@tom@json ted##tiny##tom##json
需要注意的是:
explode()函数使用limit后,后面的不再使用分隔符分割,作为剩下的一个元素存在;
使用join()函数后得到的结果没有绿色。
另一分割函数
strtok() 函数把字符串分割为更小的字符串。
语法
strtok(string,split)
参数 | 描述 |
---|---|
string | 必需。规定要分割的字符串。 |
split | 必需。规定一个或多个分割字符。 |
<?php $string = "Hello world. Beautiful day today."; $token = strtok($string, " "); while ($token !== false) { echo "$token<br />"; $token = strtok(" "); } ?>
结果为:
Hello world. Beautiful day today.
注意world和today右下角有句号。