explode() 函数把字符串打散为数组。返回字符串的数组

语法

explode(separator,string,limit)
登录后复制
参数描述
separator必需。规定在哪里分割字符串。
string必需。要分割的字符串。
limit

可选。规定所返回的数组元素的数目。

可能的值:

  • 大于 0 - 返回包含最多 limit 个元素的数组

  • 小于 0 - 返回包含除了最后的 -limit 个元素以外的所有元素的数组

  • 0 - 返回包含一个元素的数组

注释:"separator" 参数不能是空字符串。

示例代码如下:

<?php
/**
 * PHP 实现explort() 功能的详解
 */
$str = ',1,2,3,4,321321,aaa,bbb';
function myExplode($seg,$str,$limit=0){
   $_ret = array(0=>'');
   $len = strlen($str);
   $slen = strlen($seg);
   $_limit = 0;
   for($i=0; $i<$len; $i++){
      if(substr($str,$i,$slen) == $seg ){
          $_limit++;
          $i += $slen-1; 
          continue;
      }else{
          $_ret[$_limit] .= $str[$i]; 
      }
   }
   if($limit < 0 )
      $_ret = array_slice($_ret, 0 , $limit );
   else{
      $_ret = $limit >= count($_ret) ? $_ret :  array_merge(array_slice($_ret, 0 , $limit-1 ), array(implode( $seg , array_slice($_ret,$limit-1))));
   }
   return $_ret;
}
var_dump(myExplode("4",$str));
echo "<br>";
var_dump(explode("4",$str));
echo "<br>";
?>
登录后复制

支持 limit 为负。。分割符为字符串

以上就是php 实现explort() 功能示例代码的详细内容,更多请关注Work网其它相关文章!

09-14 20:39