찾다
php教程php手册yii2解决百度编辑器umeditor图片上传问题 - 白狼栈

作者:白狼 出处:http://www.manks.top/article/yii2_umeditor_upload本文版权归作者,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

yii2框架整合了百度编辑器,因为文件上传采用的是yii2自带的UploadedFile,这就难免umeditor上传不成功问题,解决问题的只需要两个操作步骤,我们来看看具体实现

首先我们先把umeditor的配置搞好,这里只需要更改imageUrl配置项即可,我们修改其指向/tools/um-upload

那下一步自然是实现/tools/um-upload方法了,

按照ueditor的实现来看,这里我们上传成功后只需要返回成功信息即可

<span style="color: #0000ff;">use</span><span style="color: #000000;"> backend\models\Upload;
</span><span style="color: #0000ff;">use</span><span style="color: #000000;"> yii\web\UploadedFile;
   </span><span style="color: #008000;">/*</span><span style="color: #008000;">*
     *    百度umeditor上传
     </span><span style="color: #008000;">*/</span>
    <span style="color: #0000ff;">public</span> <span style="color: #0000ff;">function</span><span style="color: #000000;"> actionUmUpload ()
    {
        </span><span style="color: #800080;">$model</span> = <span style="color: #0000ff;">new</span><span style="color: #000000;"> Upload();

        </span><span style="color: #0000ff;">if</span> (Yii::<span style="color: #800080;">$app</span>->request-><span style="color: #000000;">isPost) {

            </span><span style="color: #800080;">$model</span>-><span style="color: #008080;">file</span> = UploadedFile::getInstance(<span style="color: #800080;">$model</span>, &<span style="color: #008000;">#</span><span style="color: #008000;">39;file');</span>

            <span style="color: #800080;">$dir</span> =<span style="color: #000000;"> ‘文件保存目录’;
            </span><span style="color: #0000ff;">if</span> (!<span style="color: #008080;">is_dir</span>(<span style="color: #800080;">$dir</span><span style="color: #000000;">))
                </span><span style="color: #008080;">mkdir</span>(<span style="color: #800080;">$dir</span><span style="color: #000000;">);

            </span><span style="color: #0000ff;">if</span> (<span style="color: #800080;">$model</span>-><span style="color: #000000;">validate()) {
                </span><span style="color: #800080;">$fileName</span> = <span style="color: #800080;">$model</span>-><span style="color: #008080;">file</span>-><span style="color: #008080;">baseName</span> . "<span style="color: #008000;">." . $model->file->extension;</span>
                <span style="color: #800080;">$dir</span> = <span style="color: #800080;">$dir</span>."<span style="color: #008000;">/". $fileName;</span>
                <span style="color: #800080;">$model</span>-><span style="color: #008080;">file</span>->saveAs(<span style="color: #800080;">$dir</span><span style="color: #000000;">);

                </span><span style="color: #800080;">$info</span> =<span style="color: #000000;"> [
                    </span>"originalName" => <span style="color: #800080;">$model</span>-><span style="color: #008080;">file</span>-><span style="color: #008080;">baseName</span>,
                    "name" => <span style="color: #800080;">$model</span>-><span style="color: #008080;">file</span>-><span style="color: #008080;">baseName</span>,
                    "url" => <span style="color: #800080;">$dir</span>,
                    "size" => <span style="color: #800080;">$model</span>-><span style="color: #008080;">file</span>->size,
                    "type" => <span style="color: #800080;">$model</span>-><span style="color: #008080;">file</span>->type,
                    "state" => "<span style="color: #008000;">SUCCESS",</span>
<span style="color: #000000;">                ];
                </span><span style="color: #0000ff;">exit</span>(json_encode(<span style="color: #800080;">$info</span><span style="color: #000000;">));
            }  
        }
    }</span>

 

特别提醒:上述返回的$info信息中state状态只能是SUCCESS,区分大小写

关于Yii图片上传请参考Yii2文件上传

关于yii整合百度编辑器请参考yii2整合百度编辑器umeditor

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

mPDF

mPDF

mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

SublimeText3 영어 버전

SublimeText3 영어 버전

권장 사항: Win 버전, 코드 프롬프트 지원!

WebStorm Mac 버전

WebStorm Mac 버전

유용한 JavaScript 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

SublimeText3 Linux 새 버전

SublimeText3 Linux 새 버전

SublimeText3 Linux 최신 버전