PHP实现explort()功能的详解_php技巧
时间:2021-07-01 10:21:17
帮助过:52人阅读
代码如下:
/**
* 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 "
";
var_dump(explode("4",$str));
echo "
";
?>
支持 limit 为负。。分割符为字符串