
Veebiarenduse maailmas on üks sagedasi toiminguid failide käsitlemine. Olgu selleks siis faili olemasolu kontrollimine, sellest lugemine või sellesse kirjutamine, on oluline mõista, kuidas failidega töötada. Laravel, silmapaistev veebirakenduste raamistik, millel on väljendusrikas ja elegantne süntaks, võib osutuda üsna võimsaks failitoimingute käsitlemisel, eriti kui töötate oma hästi struktureeritud failisüsteemis. See artikkel keskendub Laraveli levinud stsenaariumile: faili olemasolu kontrollimisele.
Nüüd süveneme asja tuumasse – kontrollime, kas Laravelis on fail olemas.
<?php use IlluminateSupportFacadesStorage; $fileExists = Storage::disk('local')->exists('file.jpg'); ?>
See koodilõigu osa on kiire ja lihtne viis kontrollida, kas fail.jpg on teie Laraveli kohalikul salvestuskettal olemas. Kui fail on olemas, on $fileExists tõene, vastasel juhul väär.
Koodi mõistmine
Murrame koodi lahti ja mõistame lahendust põhjalikult. Laravel pakub võimsaid tööriistu teie failisüsteemiga suhtlemiseks, see on isegi konfigureeritud võimaldama avalikku, kohalikku ja isegi Amazon S3 kasutamist.
use IlluminateSupportFacadesStorage;
Esiteks imporditakse `Storage` fassaad. Laraveli `Storage` fassaad pakub mugavat API-d erinevate failisüsteemidega suhtlemiseks.
$fileExists = Storage::disk('local')->exists('file.jpg');
Et kontrollida, kas fail on olemas, kutsutakse fassaadil "Salvestus" meetod "olemas". See kontrollib faili olemasolu määratud „kohalikul” kettal. See meetod "exists" kontrollib faili olemasolu, tagastades selle olemasolul väärtuse "true" ja vastupidisel juhul "false".
Laraveli failisüsteem ja salvestusfassaad
Laraveli failisüsteemi mõistmine on selle toimingu võtmeks. Laravel kasutab Frank de Jonge'i PHP-paketti "Flysystem" – täiustatud, ühendatavat failisüsteemi abstraktsiooniteeki. See toetab laia valikut adaptereid, sealhulgas kohalikke ja pilvepõhiseid salvestuslahendusi.
Vaadates tähelepanelikult salvestusruumi fassaadi, tagastab see 'IlluminateFilesystemFilesystemManager' eksemplari. See võimaldab hõlpsat juurdepääsu igale konfigureeritud kettale. Konkreetne ketas saab seejärel hallata selliseid toiminguid nagu 'disk('s3')' või 'disk('local')', sõltuvalt teie faili salvestuskohast.
Lõpuks on failitoimingutega tegelemisel ülioluline käsitleda võimalikke vigu graatsiliselt, näiteks anda asjakohased vastused, kui faili ei eksisteeri või seda ei saa avada ebapiisavate õiguste tõttu.
Sarnased Laraveli failitoimingud
Laravel pakub mitmeid muid failidega seotud funktsioone, mis võivad olla kasulikud erinevatel kasutusjuhtudel:
- saama: see toob faili sisu alla.
- panema: see meetod kirjutab pakutava sisu faili.
- kustutama: seda kasutatakse faili kustutamiseks.
Laraveli "Storage" fassaad lihtsustab teie rakenduses failidega töötamist ja nende funktsioonide mõistmine on rakenduste produktiivsuse jaoks hädavajalik. Selle artikli kaudu oleme suutnud uurida, kuidas kontrollida, kas fail on Laravelis olemas, lahti harutanud Laraveli failisüsteemi ja mõned selle märkimisväärselt käepärased failitöömeetodid.