Rumah >rangka kerja php >Laravel >proses muat naik berbilang fail laravel
Laravel ialah rangka kerja PHP popular yang menyediakan fungsi muat naik fail yang mudah, membolehkan pengguna memuat naik berbilang fail. Artikel ini akan memperkenalkan proses muat naik berbilang fail dalam Laravel.
1. Konfigurasikan penghalaan
Dalam Laravel, muat naik fail biasanya diserahkan melalui permintaan POST. Fail yang dimuat naik akan dihantar ke pelayan di laluan yang ditentukan, seperti /upload
. Untuk membolehkan Laravel mengendalikan fail yang dimuat naik, kita perlu menentukan laluan dalam fail routes/web.php
seperti berikut:
<code>Route::post('/upload', 'FileController@upload');</code>
Laluan ini menghantar permintaan POST ke laluan /upload
dan menghantarnya ke The Kaedah FileController
dalam pengawal bernama upload
.
2. Cipta pengawal
Buat pengawal bernama FileController
dan tulis kaedah upload
di dalamnya. Kaedah ini akan mengendalikan fail yang dimuat naik:
<code>public function upload(Request $request) { $files = $request->file('file'); foreach ($files as $file) { $fileName = time() . '-' . $file->getClientOriginalName(); $file->move(public_path('uploads'), $fileName); } }</code>
Dalam kaedah ini, kami mula-mula mendapatkan fail yang dimuat naik dan mengulanginya. Untuk setiap fail, kami menggunakan kaedah getClientOriginalName
untuk mendapatkan nama fail asalnya, menggabungkannya dengan cap masa semasa ke dalam nama fail baharu, dan kemudian menggunakan kaedah move
untuk menyimpannya dalam direktori uploads
awam pelayan.
Perhatikan bahawa Laravel akan mengesahkan secara automatik bahawa fail itu memenuhi keperluan (saiz, jenis, dsb.). Jika fail yang dimuat naik tidak memenuhi keperluan, Laravel akan membuang ValidationException
pengecualian.
3. Konfigurasikan borang
Sekarang kita perlu mencipta borang dalam paparan untuk membolehkan pengguna memuat naik fail. Dalam contoh ini, kami akan mencipta borang dalam fail resources/views/upload.blade.php
:
<code><form method="POST" action="/upload" enctype="multipart/form-data"> @csrf <input type="file" name="file[]" multiple> <button type="submit">上传文件</button> </form></code>
Mula-mula, kami mentakrifkan kaedah POST untuk menghantar data borang ke alamat /upload
. Memandangkan kami perlu memuat naik berbilang fail, kami menggunakan atribut multiple
untuk menetapkan elemen <input>
kepada berbilang pilih. Selain itu, kita perlu menambah atribut enctype="multipart/form-data"
pada borang untuk memastikan fail dikodkan dengan betul dan dipindahkan melalui permintaan POST.
4. Uji fungsi muat naik
Sekarang kami telah menyelesaikan konfigurasi dan pelaksanaan fungsi muat naik, kami boleh menguji sama ada kami berjaya memuat naik fail. Kami boleh mengakses laluan /upload
dan memuat naik berbilang fail. Selepas muat naik selesai, kami boleh menyemak sama ada fail kami telah disimpan dalam direktori uploads
pelayan.
Ringkasan
Melalui langkah di atas, kami telah berjaya mengkonfigurasi fungsi muat naik berbilang fail Laravel. Untuk memuat naik berbilang fail kita perlu menggunakan elemen bentuk jenis tatasusunan dan menggunakan gelung dalam pengawal untuk memproses setiap fail yang dimuat naik. Kami juga mempelajari cara mengkonfigurasi laluan dan borang Laravel untuk mengendalikan muat naik fail.
Atas ialah kandungan terperinci proses muat naik berbilang fail laravel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!