首页 >后端开发 >PHP问题 > 正文

php怎么删除指定字符间的字符串

原创2021-09-22 09:18:240669

php删除指定字符间的字符串的方法:1、创建一个PHP示例文件;2、输入代码“public function getStr(){...}”;3、通过getStr方法删除字符串中指定两段字符中间的的字符即可。

本文操作环境:windows7系统、PHP7.1版、Dell G3电脑。

php怎么删除指定字符间的字符串?

PHP删除字符串中指定两段字符中间的的字符

做项目中遇到的问题,需要删除字符串中指定两段字符中间的的字符。

public function getStr()
    {
        //str是一串有规则的字符串,现在我想删除其中一段,代码如下
        $str="1,2018-04-15_20:15:11,2,2018-04-15_20:15:11,3,2018-04-15_20:15:11,4,2018-04-15_20:15:11";
        //获取开始位置,选择 ,2,(防止和时间的年份冲突)
        $i1=strpos($str,',2,');//开始位置
        $i2=strpos($str,',',$i1+3);//结束位置
        $str1=substr($str,0,$i1) . substr($str,$i2,strlen($str));
        echo $str."<br>".$str1;//换行输出,对比结果
        //输出结果 
        //1,2018-04-15_20:15:11,2,2018-04-15_20:15:11,3,2018-04-15_20:15:11,4,2018-04-15_20:15:11
        //1,2018-04-15_20:15:11,3,2018-04-15_20:15:11,4,2018-04-15_20:15:11
        //OK,完美。
    }

简单封装一下(感觉封装后反倒麻烦了),但还是记录一下吧

public function getStr($str,$str1,$n1,$str2,$n2)
    {
        /**
         * $str为要处理的字符串
         * $str1为选中的唯一字符串
         * $n1为从$str中第几个字符串开始截取
         * $str2为选中的唯一字符串
         * $n2为从$str2中第几个字符串结束截取
         */
        $i1=strpos($str,$str1)+$n1;
        $i2=strpos($str,$str2,$i1)+$n2;
        $str1=substr($str,0,$i1-1) . substr($str,$i2,strlen($str));
        return $str1;
    }

举个栗子,用封装方法就做如下

//对应的五个值如下 
$str="1,2018-04-15_20:15:11,2,2018-04-15_20:15:11,3,2018-04-15_20:15:11,4,2018-04-15_20:15:11";
$str1=",2,";
$n1="2";            //从指定值中的2 开始截取
$str2=",";
$n2="1";            //截取到指定值中的第一位,也就是,
echo(getStr($str,$str1,$n1,$str2,$n2));    //嗯,结果也一样,就是感觉没弄好,也不简单哈

PS:遇到了,小计一下

推荐学习:《PHP视频教程

以上就是php怎么删除指定字符间的字符串的详细内容,更多请关注php中文网其它相关文章!

php中文网最新课程二维码

声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理

  • 相关标签:php 字符串
  • 相关文章

    相关视频


    网友评论

    文明上网理性发言,请遵守 新闻评论服务协议

    我要评论
  • 专题推荐

    推荐视频教程
  • PHP千万级秒杀项目实战课程PHP千万级秒杀项目实战课程
  • PHP搭建CMS系统实战课程PHP搭建CMS系统实战课程
  • PHP的速通之路PHP的速通之路
  • PHP项目实战-EWShop商城系统PHP项目实战-EWShop商城系统
  • 视频教程分类