PHP 实现explort() 功能
<?php /** * @author:xiaojiang * 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 为负。。分割符为字符串
生命只有一次。