删除(销毁)富文本框内的图片资源,编辑时删除(销毁)富文本框内删除或者替换的图片资源

冷暖自知 提交于 2020-01-26 03:16:31

/**
     * 删除富文本框内的图片资源(必须后台上传的,也不能是外连接),可以放在公共办法里直接调用
    */
    function del_fuwenben_img($content){
        $content = htmlspecialchars_decode($content);//首先转义
        preg_match_all("/src=[\'\"]\/public\/upload(.*?)[\'\"].*?/", $content, $match);//正则匹配
        foreach ($match[0] as $key => $value) {
            $limg = ltrim($value,'src="');
            $img = rtrim($limg,'"');
            if ($img && file_exists('.'.$img)) {
                unlink('.'.$img);//销毁图片
            }
        }
    }

 

/**
     * 编辑时删除(销毁)富文本框内删除或者替换的图片资源(必须后台上传的,也不能是外连接)
     * $content 是否需要删除的(原本的)
     * $content_edit 对比的(编辑过的)
    */
    function del_fuwenben_img_edit($content,$content_edit){

        $content_edit = htmlspecialchars_decode($content_edit);
        preg_match_all("/src=[\'\"]\/public\/upload(.*?)[\'\"].*?/", $content_edit, $match_edit);
        $img_edit = [];
        foreach ($match_edit[0] as $key => $value) {
            $limg = ltrim($value,'src="');
            $img_edit[] = rtrim($limg,'"');
        }

        $content = htmlspecialchars_decode($content);
        preg_match_all("/src=[\'\"]\/public\/upload(.*?)[\'\"].*?/", $content, $match);
        foreach ($match[0] as $key => $value) {
            $limg = ltrim($value,'src="');
            $img = rtrim($limg,'"');
            if(!in_array($img, $img_edit)){
                if ($img && file_exists('.'.$img)) {
                    unlink('.'.$img);
                }
            }
        }
    }

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!