Heim >PHP-Framework >Laravel >So richten Sie Laravel-Bilder ein

So richten Sie Laravel-Bilder ein

PHPz
PHPzOriginal
2023-05-29 09:26:07605Durchsuche

Laravel ist ein beliebtes PHP-Framework, das Entwicklern hilft, Webanwendungen schnell zu erstellen, zu testen und bereitzustellen. In vielen Anwendungen sind Multimediadateien wie Bilder und Bilder unerlässlich. In diesem Artikel erfahren Sie, wie Sie Bilder in Laravel einrichten, um Bilder und Grafiken zu Ihrer Anwendung hinzuzufügen.

  1. Laravel installieren

Bevor Sie beginnen, müssen Sie Laravel auf Ihrem lokalen Computer installieren. Sie können die offizielle Website von Laravel (https://laravel.com/docs/8.x/installation) besuchen, um die Installationsanleitung von Laravel anzuzeigen.

  1. Controller erstellen

In Laravel werden Controller verwendet, um Benutzeranfragen zu bearbeiten und Antworten zurückzugeben. Bevor Sie einen Controller erstellen, müssen Sie zunächst eine Laravel-Anwendung erstellen. Erstellen Sie nach dem Erstellen Ihrer Laravel-Anwendung einen neuen Bildcontroller mit dem folgenden Befehl:

php artisan make:controller ImageController
  1. SETUPSTORAGE

In Laravel können Sie Bilder und Bilder erstellen über das Dateisystem oder den Cloud-Speicher gespeichert werden. Laravel bietet eine einfache einheitliche API, die den Wechsel zwischen lokalen Dateisystemen und Cloud-Speicher sehr einfach macht.

3.1 Im lokalen Dateisystem speichern

Laravel unterstützt das Speichern von Bildern und Bildern im lokalen Dateisystem. Mit dem folgenden Befehl können Sie das lokale Dateisystem in Ihrer Laravel-Anwendung einrichten:

php artisan storage:link

Alternativ können Sie das lokale Dateisystem in der Datei config/filesystems.php konfigurieren:

'local' => [
    'driver' => 'local',
    'root'   => storage_path('app'),
],
#🎜🎜 #Im obigen Beispiel ist storage_path('app') der Pfad, der zum Speichern von Bildern und Bildern verwendet wird. Sie können diesen Pfad an Ihre Bedürfnisse anpassen.

storage_path('app') 是用于存储图像和图片的路径。您可以根据自己的需要修改此路径。

3.2 存储在云存储

如果您的应用程序需要处理大量图像和图片,并且需要在不同的设备之间共享它们,则应将它们存储在云存储中,如 Amazon S3 或 Google Cloud Storage。

要使用 Laravel 中的云存储,您需要在 config/filesystems.php 文件中配置云存储:

's3' => [
    'driver' => 's3',
    'key'    => env('AWS_ACCESS_KEY_ID'),
    'secret' => env('AWS_SECRET_ACCESS_KEY'),
    'region' => env('AWS_DEFAULT_REGION'),
    'bucket' => env('AWS_BUCKET'),
],

在上面的示例中,AWS_ACCESS_KEY_IDAWS_SECRET_ACCESS_KEYAWS_DEFAULT_REGIONAWS_BUCKET 是存储桶的认证细节。您需要向云存储提供这些细节,以便 Laravel 可以访问您的存储桶并将图像和图片存储在其中。

  1. 上传图片

在 Laravel 中,您可以使用 Laravel 文件系统(IlluminateFilesystemFilesystem)类来上传图像和图片。要开始上传文件,您需要在控制器中编写以下代码:

public function upload(Request $request)
{
    if ($request->hasFile('image')) {
        $file = $request->file('image');
        $fileName = $file->getClientOriginalName();
        $filePath = $file->storeAs('/public', $fileName);
        return $filePath;
    }
}

在上面的示例中,我们检查了 HTTP 请求中是否存在一个名为 image 的文件。如果存在,则可以使用 $file 对象访问该文件。我们使用 $file->getClientOriginalName() 获取文件的原始名称,并使用 $file->storeAs() 方法将文件存储在指定的路径和文件名下。此示例中,我们将文件存储在 public 目录下。

  1. 显示图片

在 Laravel 中,您可以使用 Blade 模板引擎显示图像和图片。例如,如果您在模板中有以下代码:

<img src="{{ asset('storage/image.jpg') }}" alt="Image">

在上面的示例中,我们使用 asset()3.2 Im Cloud-Speicher speichern

    Wenn Ihre Anwendung eine große Anzahl von Bildern und Bildern verarbeiten und diese zwischen verschiedenen Geräten teilen muss, sollten sie in der Cloud gespeichert werden Speicher wie Amazon S3 oder Google Cloud Storage.
  1. Um Cloud-Speicher in Laravel zu verwenden, müssen Sie Cloud-Speicher in der Datei config/filesystems.php konfigurieren:
rrreee

Im obigen Beispiel AWS_ACCESS_KEY_ID, <code>AWS_SECRET_ACCESS_KEY, AWS_DEFAULT_REGION und AWS_BUCKET sind die Authentifizierungsdetails des Buckets. Sie müssen diese Details dem Cloud-Speicher zur Verfügung stellen, damit Laravel auf Ihren Bucket zugreifen und Bilder und Fotos darin speichern kann.

    #🎜🎜#Bilder hochladen#🎜🎜##🎜🎜##🎜🎜#In Laravel können Sie das Laravel-Dateisystem verwenden (IlluminateFilesystemFilesystem) Klasse zum Hochladen von Bildern und Bildern. Um mit dem Hochladen von Dateien zu beginnen, müssen Sie den folgenden Code in Ihren Controller schreiben: #🎜🎜#rrreee#🎜🎜#Im obigen Beispiel haben wir überprüft, ob es ein Bild mit dem Namen image document gibt. Falls vorhanden, kann über das Objekt $file auf die Datei zugegriffen werden. Wir verwenden $file->getClientOriginalName(), um den ursprünglichen Namen der Datei abzurufen, und verwenden die Methode $file->storeAs(), um die Datei unter zu speichern angegebenen Pfad und Datei unter dem Namen. In diesem Beispiel speichern wir die Dateien im Verzeichnis public. #🎜🎜#
      #🎜🎜#Bilder anzeigen #🎜🎜##🎜🎜##🎜🎜# In Laravel können Sie Bilder und Bilder mithilfe der Blade-Vorlagen-Engine anzeigen. Wenn Ihre Vorlage beispielsweise den folgenden Code enthält: #🎜🎜#rrreee#🎜🎜#Im obigen Beispiel verwenden wir die Funktion asset(), um die URL des Bildes zu generieren. Diese Funktion fügt die Stamm-URL Ihrer Laravel-Anwendung zum angegebenen Pfad hinzu und gibt die vollständige URL des Bildes zurück. #🎜🎜##🎜🎜##🎜🎜#Fazit#🎜🎜##🎜🎜##🎜🎜#In diesem Artikel haben wir den Prozess der Einrichtung von Bildern in einer Laravel-Anwendung detailliert beschrieben. Wir haben gelernt, wie man lokale Dateisysteme und Cloud-Speicher nutzt, um Bilder und Grafiken zu manipulieren und sie mithilfe des Laravel-Controllers und der Blade-Template-Engine anzuzeigen. In Ihrem nächsten Laravel-Projekt können Sie diese Techniken verwenden, um Bilder und Bilder hinzuzufügen und Ihre Anwendung reichhaltiger und attraktiver zu machen. #🎜🎜#

Das obige ist der detaillierte Inhalt vonSo richten Sie Laravel-Bilder ein. 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