suchen
HeimPHP-FrameworkDenken Sie an PHPSo laden Sie Bilder in thinkphp hoch

In der Webentwicklung wird das Hochladen von Bildern oft als eine der notwendigen Funktionen angesehen, und ThinkPHP, ein auf PHP basierendes Open-Source-Framework, bietet eine Vielzahl von Methoden zum Implementieren der Funktion zum Hochladen von Bildern. Im Folgenden stellen wir eine Implementierungsmethode zum Hochladen von Bildern vor, die auf ThinkPHP basiert.

Schritt 1: Notwendige Parameter konfigurieren

In der Konfigurationsdatei config.php müssen wir zunächst Parameter wie Upload-Dateipfad, Bildgrößenbeschränkung und Dateitypbeschränkung konfigurieren. Die spezifische Konfiguration ist wie folgt:

return [
    'upload_path' => './uploads/', //上传文件路径
    'img_max_size' => 2 * 1024 * 1024, //最大上传图片大小
    'img_allow_types' => 'jpg,png,gif,jpeg', //允许上传的文件类型
];

Schritt 2: Schreiben Sie den Bild-Upload-Code

In ThinkPHP können wir die Bild-Upload-Funktion mithilfe der Upload-Klasse implementieren. Importieren Sie zuerst die Upload-Klasse:

use think\facade\Request;
use think\facade\Filesystem;

class ImageUpload
{
    public function upload()
    {
        $img_file = Request::file('img'); //获取上传的图片文件
        $img_path = config('upload_path'); //获取上传路径
        $max_size = config('img_max_size'); //获取最大文件尺寸
        $allow_types = config('img_allow_types'); //获取允许上传的类型

        //判断上传文件是否有效、大小是否符合、类型是否正确
        if (!$img_file->isValid()) {
            return ['code' => 1, 'msg' => '上传图片无效'];
        }

        if ($img_file->getSize() > $max_size) {
            return ['code' => 2, 'msg' => '上传图片大小超过限制'];
        }

        if (!in_array($img_file->extension(), explode(',', $allow_types))) {
            return ['code' => 3, 'msg' => '上传图片类型不支持'];
        }

        //上传文件
        $file_info = $img_file->move($img_path);
        if ($file_info === false) {
            return ['code' => 4, 'msg' => '上传图片失败,请重试'];
        }

        //返回上传成功信息
        $file_name = $file_info->getSaveName();
        $file_url = Filesystem::getDiskConfig('public', ['url' => '/'])->getVisibility()->url($img_path . $file_name);
        return ['code' => 0, 'msg' => '上传图片成功', 'url' => $file_url];
    }
}

Schritt 3: Rufen Sie den Bild-Upload-Code auf

Als nächstes können wir den Bild-Upload-Code im Controller aufrufen und das Upload-Ergebnis erhalten:

public function uploadImage()
{
    $result = (new ImageUpload())->upload();
    echo json_encode($result);
}

Schließlich müssen wir nur noch den Bild-Upload aufrufen Code auf der Front-End-Seite Verwenden Sie Ajax, um Bilddateien auf den Server hochzuladen:


         
<script> $(document).on(&#39;submit&#39;, &#39;#image-form&#39;, function (event) { event.preventDefault(); var formData = new FormData(document.getElementById(&#39;image-form&#39;)); $.ajax({ url: &#39;/uploadImage&#39;, type: &#39;post&#39;, data: formData, contentType: false, processData: false, dataType: &#39;json&#39;, success: function (res) { //处理上传结果 }, error: function (xhr, textStatus, errorThrown) { console.log(errorThrown); } }); }); </script>

Zusammenfassend wurde durch die obigen Schritte die auf ThinkPHP basierende Bild-Upload-Funktion abgeschlossen.

Das obige ist der detaillierte Inhalt vonSo laden Sie Bilder in thinkphp hoch. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heiße Werkzeuge

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

MinGW – Minimalistisches GNU für Windows

MinGW – Minimalistisches GNU für Windows

Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

mPDF

mPDF

mPDF ist eine PHP-Bibliothek, die PDF-Dateien aus UTF-8-codiertem HTML generieren kann. Der ursprüngliche Autor, Ian Back, hat mPDF geschrieben, um PDF-Dateien „on the fly“ von seiner Website auszugeben und verschiedene Sprachen zu verarbeiten. Es ist langsamer und erzeugt bei der Verwendung von Unicode-Schriftarten größere Dateien als Originalskripte wie HTML2FPDF, unterstützt aber CSS-Stile usw. und verfügt über viele Verbesserungen. Unterstützt fast alle Sprachen, einschließlich RTL (Arabisch und Hebräisch) und CJK (Chinesisch, Japanisch und Koreanisch). Unterstützt verschachtelte Elemente auf Blockebene (wie P, DIV),

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung