PHP 实现explort() 功能的详解


Posted in PHP onJune 20, 2013
<?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 相关文章推荐
用windows下编译过的eAccelerator for PHP 5.1.6实现php加速的使用方法
Sep 30 PHP
PHP define函数的使用说明
Aug 27 PHP
php中将网址转换为超链接的函数
Sep 02 PHP
关于二级目录拖拽排序的实现(源码示例下载)
Apr 26 PHP
深入密码加salt原理的分析
Jun 06 PHP
PHP fopen()和 file_get_contents()应用与差异介绍
Mar 19 PHP
php实现图片上传并利用ImageMagick生成缩略图
Mar 14 PHP
提交表单后 PHP获取提交内容的实现方法
May 25 PHP
php使用PDO从数据库表中读取数据的实现方法(必看)
Jun 02 PHP
YII2自动登录Cookie总是失效的解决方法
Jun 28 PHP
Yii2.0 RESTful API 基础配置教程详解
Dec 26 PHP
php 命名空间(namespace)原理与用法实例小结
Nov 13 PHP
PHP 简易输出CSV表格文件的方法详解
Jun 20 #PHP
使用Linux五年积累的一些经验技巧
Jun 20 #PHP
解析PHP高效率写法(详解原因)
Jun 20 #PHP
php代码书写习惯优化小结
Jun 20 #PHP
浅析使用Turck-mmcache编译来加速、优化PHP代码
Jun 20 #PHP
解析如何用php screw加密php源代码
Jun 20 #PHP
php_screw 1.5:php加密: 安装与使用详解
Jun 20 #PHP
You might like
《Re:从零开始的异世界生活 冰结之绊》
2020/04/09 日漫
PHP中的gzcompress、gzdeflate、gzencode函数详解
2014/07/29 PHP
PHP实践教程之过滤、验证、转义与密码详解
2017/07/24 PHP
PHP+MySQL实现在线测试答题实例
2020/01/02 PHP
JavaScript高级程序设计
2006/12/29 Javascript
JavaScript的document对象和window对象详解
2010/12/30 Javascript
jQuery News Ticker 基于jQuery的即时新闻行情展示插件
2011/11/05 Javascript
玩转jQuery按钮 请告诉我你最喜欢哪些?
2012/01/08 Javascript
extjs 分页使用jsp传递数据示例
2014/07/29 Javascript
原生js与jQuery实现简单的tab切换特效对比
2015/07/30 Javascript
利用jQuery的动画函数animate实现豌豆发射效果
2016/08/28 Javascript
JavaScript字符串_动力节点Java学院整理
2017/06/27 Javascript
React入门教程之Hello World以及环境搭建详解
2017/07/11 Javascript
详解Webpack DLL用法以及功能
2017/07/11 Javascript
vue项目中跳转到外部链接的实例讲解
2018/09/20 Javascript
JavaScript继承与聚合实例详解
2019/01/22 Javascript
js实现的在本地预览图片功能示例
2019/11/09 Javascript
JavaScript进阶(一)变量声明提升实例分析
2020/05/09 Javascript
小程序实现简单语音聊天的示例代码
2020/07/24 Javascript
Vue父子组件传值的一些坑
2020/09/16 Javascript
微信小程序实现弹幕墙(祝福墙)
2020/11/18 Javascript
安装Python的教程-Windows
2017/07/22 Python
Anaconda下安装mysql-python的包实例
2018/06/11 Python
PyQt5实现QLineEdit添加clicked信号的方法
2019/06/25 Python
Win10系统下安装labelme及json文件批量转化方法
2019/07/30 Python
python GUI库图形界面开发之PyQt5单选按钮控件QRadioButton详细使用方法与实例
2020/02/28 Python
如何在 Matplotlib 中更改绘图背景的实现
2020/11/26 Python
英国奢侈皮具品牌:Aspinal of London
2018/09/02 全球购物
数控个人求职信范文
2014/02/03 职场文书
语文教育专业求职信
2014/06/28 职场文书
法人身份证明书
2014/10/08 职场文书
《改造我们的学习》心得体会
2014/11/07 职场文书
php 原生分页
2021/04/01 PHP
如何用python反转图片,视频
2021/04/24 Python
详解Go语言运用广度优先搜索走迷宫
2021/06/23 Python
Win10/Win11 任务栏替换成经典样式
2022/04/19 数码科技