在指定的字符串 的 指定位置 插入 指定内容 [基础教程]

作者:谁偷了汝的凶兆 发布于:2018-04-08 浏览:133次 收藏

  清明放假前一晚上,我预约了六点私家车准备回家,厦门那叫一个堵啊,司机打电话和我说 八点才能过来,于是我百般无奈泡起了泡面。然后就被老板留住做一些事,其中在处理一个文章内容时,需要在指定标签后面插入 广告。具体方法分享下:

    1.查找到指定位置(例如 我要在第三个标签<\p>后插入广告代码):

/**
     * 选择到标签指定位置后 字节长度
     * $find 标签名字
     * $number 第几个标签位置
     * $body  被查找的内容
     * @param unknown $number
     * @param unknown $find
     * @param unknown $body
     * @return number
     * @author kangjy
     */
    public function position($number,$find,$body)
    {
        //获取标签长度
        $findLen = strlen($find);
        //初始化位置
        $position =0;
        for ($number=1; $number<=3; $number++) {
            $position = stripos($body, $find, $position);
            //var_dump('第'.$number.'个 位置'.$position);
            $position += $findLen;
            //   var_dump('第'.$number.'个 位置加寻找词的长度');
        }
        return $position ;
    }


    2.插入指定字符串代码


 /**
     * 指定位置插入字符串
     * @param $str  原字符串
     * @param $i    插入位置
     * @param $substr 插入字符串
     * @return string 处理后的字符串
     * @author kangjy
     */
    public function insertToStr($str, $i,$substr){
        //指定插入位置前的字符串
        $startstr="";
        for($j=0; $j<$i; $j++){
            $startstr .= $str[$j];
        }
        //指定插入位置后的字符串
        $laststr="";
        for ($j=$i; $j<strlen($str); $j++){
            $laststr .= $str[$j];
        }
        //将插入位置前,要插入的,插入位置后三个字符串拼接起来
        $str = $startstr . $substr . $laststr;
        //返回结果
        return $str;
    }


这样就可以了,最后我泡面没吃,又加班到九点半,泡面放在桌上三天...

如果文章对您有所帮助,希望继续支持我们,您的支持是我们最大的动力 ¥打赏
标签: 指定位置插入字符串
声明:文章内容由作者原创或整理,未经允许,不得转载!
您需要登录后才可以评论。登录 | 立即注册