introduzzjoni
L-immaniġġjar tal-fajls huwa parti importanti mill-iżvilupp. Jintużaw fuq in-naħa tal-klijent kif ukoll fuq in-naħa tas-server. Żviluppatur irid jifhem, għall-inqas, il-kunċetti bażiċi tal-immaniġġjar tal-fajls.
PHP jappoġġja l-immaniġġjar tal-fajls. Peress li lingwa ta 'programmar fuq in-naħa tas-server, fajls u direttorji jistgħu jiġu ġestiti fuq server tal-web bl-użu ta' PHP. F'dan it-tutorja, ser niddiskutu kif timmaniġġja l-fajls bl-użu tal-PHP.
Immaniġġjar tal-fajls fil-PHP
Fil-PHP, nistgħu nwettqu diversi operazzjonijiet differenti fuq il-fajls. Pereżempju, nistgħu niftħu fajl u nwettqu operazzjonijiet bħal qari jew kitba, jew it-tnejn. Nibdew billi niddiskutu kif tiftaħ fajl f'modi differenti.
Ftuħ u għeluq fajls
L-ewwel pass huwa li tiftaħ fajl. PHP jipprovdi l-funzjoni fopen() biex tiftaħ fajl eżistenti. Il-funzjoni fopen() għandha żewġ parametri:
Filename | Issettja l-isem tal-fajl. Il-parametru jaċċetta fajls lokali, iżda wkoll URL (jekk allow_url_fopen hija ssettjata għal vera). |
mod | Jispeċifika t-tip ta' aċċess li se jingħata (fe read access, jew read and write access). |
Eżempju sempliċi:
<?php
$file = fopen("demo.txt", "r");
?>
Fil-kodiċi ta 'hawn fuq, "demo.txt" huwa l-isem tal-fajl filwaqt li "r" huwa l-mod.
PHP għandu diversi modi definiti. Li ġejja hija l-lista tal-modi kollha disponibbli fil-PHP.
- r – Biex tiftaħ il-fajl għall-qari.
- r+ – Biex tiftaħ il-fajl għall-qari kif ukoll għall-kitba.
- w – Biex tiftaħ il-fajl għall-kitba. Jikklerja l-kontenut tal-fajl u jipprova joħloq fajl ġdid jekk ma jeżistix.
- w+ – Biex tiftaħ il-qari tal-fajl kif ukoll il-kitba. Jikklerja l-kontenut tal-fajl u jipprova joħloq fajl ġdid jekk ma jeżistix.
- a – Biex tehmeż kontenut fuq fajl eżistenti. Ma jneħħix il-kontenut tal-fajl u jipprova joħloq fajl ġdid jekk ma jeżistix.
- a+ – Biex tiftaħ il-fajl għall-qari u tehmeż. Ma jneħħix il-kontenut tal-fajl u jipprova joħloq fajl ġdid jekk ma jeżistix.
- x – Biex tiftaħ il-fajl għall-qari iżda jirritorna falza jekk il-fajl ma jeżistix.
- x+ – Biex tiftaħ il-fajl għall-qari kif ukoll għall-kitba. Jirritorna wkoll falza jekk il-fajl ma jeżistix.
- c – Biex tiftaħ il-fajl għall-qari. Jikklerja l-kontenut u jipprova joħloq fajl ġdid jekk ma jeżistix.
- c++ – Biex tiftaħ il-fajl għall-qari u l-kitba. Jikklerja l-kontenut u jipprova joħloq fajl ġdid jekk ma jeżistix.
Dejjem agħlaq il-fajls manwalment
Għalkemm PHP jagħlaq awtomatikament il-fajls kollha wara li jsiru l-operazzjonijiet, huwa rakkomandat li tagħlaq il-fajl manwalment. PHP jipprovdi l-funzjoni fclose() biex tagħlaq il-fajl miftuħ.
Il-funzjoni fclose() għandha parametru wieħed – isem tal-fajl. Osserva l-kodiċi li ġej.
<?php
$file = fopen("demo.txt", "r");
fclose($file);
?>
Funzjonijiet PHP għall-fajls
fopen() u fclose() huma funzjonijiet primarji użati għall-ftuħ u l-għeluq tal-fajls fil-PHP, rispettivament. Iżda PHP jipprovdi funzjonijiet addizzjonali biex jgħinu lill-programmaturi. Ejja niddiskutu xi wħud minn dawn il-funzjonijiet PHP in-built.
file_exists()
Xogħol ma 'fajls huwa suxxettibbli għal żbalji u twissijiet. Tista' tinħoloq sitwazzjoni fejn il-fajl speċifikat ma jeżistix. Dan jista' jwassal għal żbalji jew twissijiet. Biex tevita żbalji u twissijiet bħal dawn, huwa rakkomandat li tuża l-funzjoni file_exists() qabel tuża fopen() biex tiċċekkja jekk il-fajl jeżistix jew le.
Ara l-kodiċi li ġej.
<?php
// check if the file exists
if (file_exists("demo.txt"))
{
// open the file in read mode
$file = fopen("demo.txt","r");
// close the file
fclose($file);
} else {
echo "file does not exist";
}
?>
Fil-kodiċi ta 'hawn fuq, il-funzjoni file_exists() tintuża mal-istqarrija-if biex tivverifika jekk "demo.txt" teżistix jew le.
fread()
Fajl jista 'jkun enormi. Jista 'jkollna bżonn naqraw il-kontenut kollu jew biss parti minnu. Ejja ngħidu li għandna bżonn naqraw biss l-ewwel 10 karattri tal-kontenut kollu tal-fajl. F'każijiet bħal dawn, nistgħu nużaw il-funzjoni fread().
Il-funzjoni fread() għandha żewġ parametri - fajl u tul f'bytes.
Osserva l-kodiċi li ġej.
<?php
// check if the file exists
if (file_exists("demo.txt"))
{
// open the file in read mode
$file = fopen("demo.txt","r");
// use fread() function
$data = fread($file, "10");
echo $data
// close the file
fclose($file);
} else {
echo "file does not exist";
}
?>
Fil-kodiċi ta 'hawn fuq, il-funzjoni fread() tintuża biex taqra 10 bytes mill-fajl "demo.txt".
fwrite()
Il-funzjoni fwrite() tintuża biex tikteb id-data fuq fajl. Huwa jieħu żewġ parametri - fajl u spag.
Osserva l-kodiċi li ġej.
<?php
// iċċekkja l-eżistenza jekk fajl
if(file_exists ("demo.txt"))
{
// tiftaħ fajl bil-mod "w".
$file = fopen(“demo.txt”, “w”);
fwrite($file, "Din hija string");
}
inkella {
eku "fajl ma jeżistix";
}
?>
Hemm żewġ xenarji fil-kodiċi ta 'hawn fuq.
- Jekk "demo.txt" ma teżistix, il-funzjoni fwrite() toħloq fajl ġdid u tikteb "Din hija string" fuqha.
- Jekk teżisti "demo.txt", il-funzjoni fwrite() tikteb fuq il-kontenut tal-fajl imma jekk trid tehmeż il-kontenut, imbagħad uża l-mod "a" minflok "w".
tip ta' fajl()
Biex tiċċekkja t-tip tal-fajl, PHP jipprovdi l-funzjoni filetype(). Dawn li ġejjin huma l-valuri possibbli li l-funzjoni filetype() tista’ tirritorna.
- chariot
- fifo
- ħmieġ
- fajl
- rabta
- sokit
- blokk
- mhux magħruf
unlink ()
Il-funzjoni unlink() tintuża biex tħassar fajl jew direttorju. Jirritorna veru jekk il-fajl jew id-direttorju jitħassar u falz jekk le.
Osserva l-kodiċi li ġej.
<?php
// iċċekkja l-eżistenza jekk fajl
if(file_exists ("demo.txt"))
{
// tuża l-funzjoni unlink () biex tħassar demo.txt
jekk (unlink ("demo.test")){
eku "fajl imħassar";
}
inkella {
eku "żball waqt li tħassar il-fajl";
}
}
inkella {
eku "fajl ma jeżistix";
}
?>
Fil-kodiċi ta 'hawn fuq, il-funzjoni unlink() tintuża biex tħassar "demo.txt".
sommarju
- Il-funzjoni fopen() tintuża biex tiftaħ fajl.
- Hemm modi differenti biex tiftaħ fajl bl-użu tal-funzjoni fopen().
- Il-funzjoni fclose() tintuża biex tagħlaq fajl.
- PHP jipprovdi diversi funzjonijiet inerenti biex jaħdmu ma 'fajls.
- Uħud mill-funzjonijiet inerenti użati komunement huma file_exists(), fread(), fwrite(), filetype(), u unlink().
Issa taf kif taqra u toħloq fajl fil-PHP, ejja nitgħallmu dwar Loops.