Laravel ialah rangka kerja PHP popular yang membantu pembangun membina, menguji dan menggunakan aplikasi web dengan cepat. Dalam kebanyakan aplikasi, fail multimedia seperti imej dan gambar adalah penting. Dalam artikel ini, kami akan memperincikan cara menyediakan imej dalam Laravel untuk menambah imej dan grafik pada aplikasi anda.
Sebelum anda bermula, anda perlu memasang Laravel pada komputer setempat anda. Anda boleh pergi ke laman web rasmi Laravel (https://laravel.com/docs/8.x/installation) untuk melihat panduan pemasangan Laravel.
Dalam Laravel, pengawal digunakan untuk mengendalikan permintaan pengguna dan membalas respons. Sebelum membuat pengawal, anda perlu membuat aplikasi Laravel terlebih dahulu. Selepas mencipta aplikasi Laravel anda, cipta pengawal imej baharu menggunakan arahan berikut:
php artisan make:controller ImageController
Dalam Laravel anda boleh menggunakan sistem fail atau Storan awan untuk simpan gambar dan gambar. Laravel menyediakan API bersatu ringkas yang menjadikan pertukaran antara sistem fail tempatan dan storan awan sangat mudah.
Laravel menyokong menyimpan imej dan gambar dalam sistem fail tempatan. Anda boleh menggunakan arahan berikut untuk menyediakan sistem fail tempatan dalam aplikasi Laravel anda:
php artisan storage:link
Selain itu, anda boleh mengkonfigurasi sistem fail tempatan dalam fail config/filesystems.php:
'local' => [ 'driver' => 'local', 'root' => storage_path('app'), ],
dalam contoh di atas, storage_path('app')
ialah laluan yang digunakan untuk menyimpan imej dan gambar. Anda boleh mengubah suai laluan ini untuk memenuhi keperluan anda.
Jika aplikasi anda perlu mengendalikan sejumlah besar imej dan gambar dan perlu berkongsinya antara peranti yang berbeza, anda harus menyimpannya dalam storan awan, Seperti Amazon S3 atau Storan Awan Google.
Untuk menggunakan storan awan dalam Laravel, anda perlu mengkonfigurasi storan awan dalam fail 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'), ],
Dalam contoh di atas, AWS_ACCESS_KEY_ID
, AWS_SECRET_ACCESS_KEY
, AWS_DEFAULT_REGION
dan AWS_BUCKET
ialah butiran pengesahan baldi. Anda perlu memberikan butiran ini kepada storan awan supaya Laravel boleh mengakses baldi anda dan menyimpan imej serta gambar di dalamnya.
Dalam Laravel, anda boleh menggunakan kelas Sistem Fail Laravel (IlluminateFilesystemFilesystem
) untuk memuat naik imej dan imej. Untuk mula memuat naik fail, anda perlu menulis kod berikut dalam pengawal anda:
public function upload(Request $request) { if ($request->hasFile('image')) { $file = $request->file('image'); $fileName = $file->getClientOriginalName(); $filePath = $file->storeAs('/public', $fileName); return $filePath; } }
Dalam contoh di atas, kami menyemak sama ada fail bernama image
wujud dalam permintaan HTTP. Jika ada, fail boleh diakses menggunakan objek $file
. Kami menggunakan $file->getClientOriginalName()
untuk mendapatkan nama asal fail dan menggunakan kaedah $file->storeAs()
untuk menyimpan fail di bawah laluan dan nama fail yang ditentukan. Dalam contoh ini, kami menyimpan fail dalam direktori public
.
Dalam Laravel, anda boleh memaparkan imej dan grafik menggunakan enjin templat Blade. Contohnya, jika anda mempunyai kod berikut dalam templat anda:
<img src="{{ asset('storage/image.jpg') }}" alt="Image">
Dalam contoh di atas, kami menggunakan fungsi asset()
untuk menjana URL imej. Fungsi ini akan menambah URL akar aplikasi Laravel anda ke laluan yang ditentukan dan mengembalikan URL penuh imej.
Dalam artikel ini, kami memperincikan proses menyediakan imej dalam aplikasi Laravel. Kami mempelajari cara menggunakan sistem fail tempatan dan storan awan untuk memanipulasi imej dan grafik, serta memaparkannya menggunakan pengawal Laravel dan enjin templat Blade. Dalam projek Laravel anda yang seterusnya, anda boleh menggunakan teknik ini untuk menambah imej dan gambar serta menjadikan aplikasi anda lebih kaya dan menarik.
Atas ialah kandungan terperinci Bagaimana untuk menyediakan imej laravel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!