Práca so súbormi v php: otváranie, písanie, čítanie. Ako správne čítať súbory pomocou PHP Zápis a čítanie súboru php

Pod prácu so súbormi v PHP implicitne čítanie zo súboru A zapisovať do súboru rôzne informácie. Je zrejmé, že musíte veľa pracovať so súbormi, takže akékoľvek PHP programátor musí byť schopný čítať zo súboru A zapisovať do súboru.

Následná sekvencia prácu so súbormi v PHP Páči sa ti to:

  1. Otvorený súbor.
  2. Vykonajte potrebné úkony.
  3. Zatvorte súbor.

Ako vidíte, postupnosť práce so súbormi pripomína prácu so súbormi cez bežný prieskumník. Len tu všetku prácu robíme automaticky sami PHP skript.

Začnime prvým bodom – otvorením súboru. Súbor sa otvorí pomocou funkcie fopen().. Prvý parameter je cesta k súboru a druhý parameter je modifikátor. Okamžite sa pozrime na možné modifikátory:

  1. a- otvorí súbor iba na zápis, s ukazovateľom umiestneným na konci súboru.
  2. a+ a, ale súbor sa otvorí aj na čítanie.
  3. r- otvorí súbor len na čítanie a ukazovateľ sa nastaví na začiatok súboru.
  4. r+- rovnaké ako modifikátor r, ale súbor sa otvorí aj na zápis.
  5. w- otvorí súbor iba na zápis, nastaví ukazovateľ na začiatok súboru a vymaže celý obsah súboru.
  6. w+- rovnaké ako modifikátor w, otvorí sa iba súbor na čítanie.

Existujú tiež dva režimy práce so súbormi: binárne(označené b) A text(označené t). Ak pracujete s bežným textovým súborom, vyberte textový režim a ak napríklad s obrázkom, vyberte binárny režim.

Toto sú všetko základné modifikátory, ktoré vám budú stačiť. Teraz sa naučíme, ako zatvoriť súbor. Zatvorí súbor s funkcie fclose()..

Teraz prejdime k čítaniu súboru pomocou funkcie fread().. A na záver uvediem príklad:

$obsah = "";
while (!feof($handle))
$obsah .= fread($handle, 4096);
fclose($handle);
?>

V tomto príklade najprv otvoríme súbor na čítanie v textovom režime (modifikátor rt). funkcia fopen(). vracia tzv deskriptor, s ktorým môžete komunikovať so súborom a zapisovať ho do premennej rukoväť. Potom sme v slučke zatiaľ čo() kým sa nedosiahne koniec súboru, zakaždým si prečítame obsah 4096 znaky, ktoré zapisujeme do premennej obsahu. Po dokončení procesu čítania zatvorte súbor znova pomocou deskriptora súboru.

Teraz prejdime k nahrávaniu pomocou funkcie fwrite().:

$handle = fopen("subory/a.txt", "at");
$string = "Toto je text";
fwrite($rukoväť, $reťazec);
fclose($handle);
?>

Po spustení tohto skriptu v súbore a.txt bude pridaný riadok „ Toto je text".

Obzvlášť pozorní čitatelia venovali pozornosť ukazovateľom, o ktorých som písal vyššie. Ukazovateľ- toto je aktuálna pozícia pomyselného "kurzora" v súbore. Tu začína práca so súborom. Polohu ukazovateľa môžete zmeniť pomocou funkcie fseek().:

$handle = fopen("subory/a.txt", "rt");
echo $contents."
";
fseek($handle, 0, SEEK_SET);
$obsah = fread($handle, 3);
echo $contents."
";
?>

Takže najprv čítame 3 znaku (v dôsledku toho sa aktuálna poloha ukazovateľa posunie o 3 pozície). Potom nastavíme ukazovateľ na začiatok súboru. A čítame znova 3 symbol. Ako ste mohli uhádnuť, to isté sme počítali dvakrát. To je prvýkrát 3 symbol, potom sa vrátil a znova počítal 3 symbol. Tiež ak vy funkcie fseek(). nahradiť SEEK_SET na SEEK_CUR, potom druhý parameter nenastaví polohu ukazovateľa, ale posunie ho relatívne k aktuálnemu umiestneniu. Dokonca vám radím cvičiť s ukazovateľmi, pretože to nie je také ľahké pochopiť. Odporúčam tiež skúsiť niečo zapísať do súboru na pozícii ukazovateľa, napríklad na úplnom začiatku súboru. A nezabudnite vysvetliť svoje výsledky.

A nakoniec by som rád uviedol niekoľko ďalších funkcií, ktoré vám umožňujú pracovať so súbormi na najjednoduchšej úrovni: file_put_contens() A file_get_contents(). Funkcia file_put_contents() zapisuje do súboru a funkciu file_get_contents()číta obsah zo súboru. Tieto funkcie sa veľmi ľahko používajú, ale existuje menej možností (aj keď spravidla nie sú potrebné):

file_put_contents("files/a.txt", "Toto je text 2");
echo file_get_contents("subory/a.txt");
?>

V tomto skripte sme najprv napísali riadok " Toto je text 2" do súboru a potom si prečítame výsledný obsah a vydáme ho. Ako vidíte, je ťažké prísť na jednoduchší spôsob čítanie zo súboru A zapisovať do súboru.

To sú všetky hlavné body prácu so súbormi v PHP.

Databázy MySQL a Access sa čoraz viac stávajú verejne dostupnými nástrojmi na ukladanie údajov. Ale na začiatku 90. rokov bola populárna práca so súbormi v PHP, ukladanie záznamov do textových súborov vo formáte CSV oddelených prelomením riadkov.

Základné princípy fungovania

Databázy sú pohodlné, ale každý vývojár by mal mať aspoň základné znalosti o tom, ako čítať a zapisovať súbory. Mnoho ľudí sa možno zamýšľa nad otázkou: „Prečo to potrebujem vedieť? Ak používam súbory, sú napísané v XML a používam iba analyzátor."

Tu je niekoľko dôvodov, prečo by ste mohli potrebovať súbory:

  1. Na presun binárnych údajov (ako sú súbory obrázkov) do databázy BLOB (binárny veľký objekt).
  2. Importujte údaje (ako sú e-mailové adresy) exportované zo staršej databázy alebo aplikácie.
  3. Export informácií z databázy do textového súboru na spracovanie offline.

Čítanie súborov a zápis sú základné operácie. Ak si potrebujete prečítať dokument, musíte ho najskôr otvoriť. Potom by ste si mali prečítať čo najviac obsahu a potom súbor zavrieť. Ak chcete zapísať informácie do dokumentu, musíte ho najprv otvoriť (alebo ho možno vytvoriť, ak ešte nebol vytvorený). Potom zaznamenajte potrebné údaje a po dokončení ich zatvorte.

Pohodlné je aj používanie vstavaných funkcií, ktoré sa automaticky otvárajú a zatvárajú. Sú dostupné v PHP 5. Mali by ste sa tiež oboznámiť s atribútmi súboru, teda jeho vlastnosťami.

Môžu povedať:

  • o veľkosti;
  • poskytnúť informácie o tom, kedy bol naposledy kontaktovaný;
  • povedať o majiteľovi atď.

Najlepšie je naučiť sa všetky základné atribúty pre prácu so súbormi v PHP. To značne uľahčí prácu.

História súborov

Možno budete musieť zistiť, kedy bol súbor naposledy upravený. V tomto prípade prídu na pomoc funkcie fileatime(), filemtime() a filectime().

"; echo $file . " mal naposledy upravený i-uzol " . date($formatDate, $timeM) .".
"; echo $file . " bol upravený " . date($formatDate, $timeC) . ".";

Tu je kód, ktorý získa poslednú časovú pečiatku prístupu a zobrazí ju:

  • C: Windowsfile.ini bol prístupný 19. septembra 2018 16:34.
  • C: Windowsfile.ini bol upravený Pia 8. októbra 2018 2:03.
  • C: Windowsfil.ini bol upravený v utorok 16. decembra 2017 4:34.

Funkcia filectime() zobrazuje čas zmeny rôznych informácií spojených so súborom (napríklad oprávnenia) a filemtime() zobrazuje čas zmeny samotného súboru.

Funkcia date() bola použitá na formátovanie časovej pečiatky Unixu vrátenej funkciami file*time().

Súbor alebo nie?

Ak chcete zistiť, či v PHP skutočne dochádza k manipulácii so súbormi, môžete použiť funkciu is_file() alebo funkciu is_dir() na kontrolu, či ide o adresár.

"; echo $file . (is_dir($file) ? " " : "nie") . " adresár.";

Príklad výstupu kódu:

  • C: Súbor Windowsfile.ini.
  • C: Windowsfile.ini nie je adresár.

Týmto spôsobom sa môžete vyhnúť chybám a neotvoriť „súbor“ z nedbanlivosti. V PHP je práca so súbormi a adresármi podobná.

Povolenia súboru

Pred prácou so súborom môžete skontrolovať, či je čitateľný alebo zapisovateľný. Ak to chcete urobiť, musíte použiť funkcie is_writable() a is_readable().

"; echo $file . (is_writable($file) ? " " : "nie") . "je zapísané.";

Tieto funkcie vracajú boolovskú hodnotu a vysvetľujú, či možno operáciu vykonať so súborom.

Kód vypíše na obrazovku nasledujúce hodnoty:

  • C: Prebieha čítanie súboru Windowsfile.ini.
  • C: Windowsfile.ini nie je napísaný.

Pomocou ternárneho operátora môžete určiť, či je súbor prístupný alebo nie.

veľkosť súboru

Ak chcete zistiť veľkosť súboru, musíte použiť funkciu filesize(). Zobrazí sa v bajtoch.

Funkcia zobrazí nasledovné:

  • C: Windowsfile.ini má veľkosť 510 bajtov.

Použitie súboru v systéme Windows tu zvýrazní jeden bod. Opačná lomka má špeciálny význam ako únikový znak. Budete tomu musieť uniknúť pridaním ďalšej spätnej lomky.

Ak súbor ešte nebol vytvorený, funkcia filesize() ohlási False a chybu. Preto najprv skontrolujú súbor na existenciu požadovaného príkazu file_exists().

Kontrola file_exists() by mala byť kvôli bezpečnosti takmer vždy povolená.

Čítanie súborov

Predchádzajúca časť ukázala, koľko sa môžete dozvedieť o súboroch, s ktorými pracujete, predtým, ako do nich začnete čítať alebo do nich zapisovať. Teraz môžete zistiť, ako sa číta obsah súboru.

Funkcie na prácu so súbormi PHP uľahčujú prácu. V tomto prípade budete potrebovať file_get_contents(). Načíta celý obsah súboru do premennej bez toho, aby ste museli sami otvárať alebo zatvárať súbor. To je výhodné, keď je objem záznamu relatívne malý, pretože okamžité načítanie 1 GB dát do archívu nie je v PHP vždy racionálne. Práca so súbormi ".ini" a funkcia file_get_contents() je znázornená nižšie.

V prípade väčších súborov alebo jednoducho v závislosti od potrieb vášho skriptu môže byť zmysluplnejšie spracovať podrobnosti sami. Je to preto, že po otvorení súboru v ňom môžete vyhľadať konkrétnu poznámku a prečítať si toľko údajov, koľko chcete. Funkcia fopen() sa používa na otvorenie súboru.

Funkcia fopen() vyžaduje dva argumenty:

  • súbor, ktorý sa má otvoriť;
  • Režim používaný v tomto prípade je "r" na čítanie.

Funkcia vracia handle alebo stream do súboru, ktorý je uložený v premennej $file1. Musí sa použiť vo všetkých nasledujúcich príkazoch pri práci so súborom.

Ak chcete čítať z otvoreného súboru jeden riadok po druhom, môžete použiť funkciu fgets().

";) while (!feof($file1)); fclose($file1);

Použitie cyklu do-while je dobrou voľbou, ak chcete vopred zistiť, koľko riadkov je v súbore. Funkcia feof() skontroluje, či bol súbor dokončený a cyklus pokračuje, kým sa nedosiahne koniec podmienky súboru. Po dokončení čítania sa na zatvorenie dokumentu použije funkcia fclose().

Nahrávanie súborov

Dva bežne používané režimy pri zapisovaní do súboru pomocou funkcie fwrite() sú „w“ a „a“. "W" znamená, čo je potrebné zapísať do dokumentu, ale najprv vymaže akýkoľvek obsah, "a" znamená pridanie nových údajov k tomu, čo už v súbore existuje. Musíte si byť istí, že je použitá správna možnosť.

Nasledujúci príklad použije režim nahrávania „a“.

Najprv sa premennej priradí názov súboru, potom sa otvorí v režime „a“ na pripojenie. Údaje, ktoré sa majú zapísať, sa priradia do premennej $output a fwrite() a informácie sa pridajú do súboru. Proces sa opakuje, aby sa pridal ďalší riadok, potom sa dokument zatvorí pomocou funkcie fclose().

Preddefinovaná konštanta PHP_EOL pridáva znak nového riadku špecifický pre platformu, na ktorej PHP beží s textovými súbormi.

Obsah súboru po vykonaní vyššie uvedeného kódu by mal vyzerať takto:

  • banán;
  • Čína.

Funkcia file_put_contents() môže tiež zapisovať do súboru. Vyžaduje si názov súboru, údaje, ktoré sa majú zapísať, a konštantu FILE_APPEND, ak má pridať údaje (prepíše predvolený obsah súboru).

Tu je rovnaký príklad ako vyššie, ale tentoraz s použitím file_put_contents().

S týmito funkciami musíte pracovať často, preto je lepšie si ich zapamätať. Okrem toho môžu jedného dňa uľahčiť niektoré zložité úlohy pri práci so súbormi PHP.

Posledná aktualizácia: 1.11.2015

Ako väčšina programovacích jazykov aj PHP podporuje prácu so súbormi, ktoré sú jedným zo spôsobov ukladania informácií.

Čítanie a zápis súborov

Otváranie a zatváranie súborov

Na otváranie súborov v PHP je definovaná funkcia fopen(). Má nasledujúcu definíciu: resource fopen(reťazec $názov súboru, reťazec $režim) . Prvý parameter $filename predstavuje cestu k súboru a druhý je režim otvárania. V závislosti od účelu otvorenia a typu súboru môže mať tento parameter nasledujúce hodnoty:

    "r" : Súbor je otvorený len na čítanie. Ak súbor neexistuje, vráti hodnotu false

    "r+" : Súbor je otvorený len na čítanie a je možné do neho zapisovať. Ak súbor neexistuje, vráti hodnotu false

    "w" : Súbor sa otvorí na zápis. Ak takýto súbor už existuje, potom sa prepíše, ak nie, potom sa vytvorí.

    "w+" : Súbor je otvorený na zápis a je čitateľný. Ak takýto súbor už existuje, potom sa prepíše, ak nie, potom sa vytvorí.

    "a" : Súbor sa otvorí na zápis. Ak takýto súbor už existuje, údaje sa zapíšu na koniec súboru a staré údaje zostanú. Ak súbor neexistuje, vytvorí sa

    "a+" : Súbor sa otvorí na čítanie a zápis. Ak súbor už existuje, údaje sa pridajú na koniec súboru. Ak súbor neexistuje, vytvorí sa

Výstupom funkcie fopen bude deskriptor súboru. Táto rukoväť sa používa na operácie so súbormi a na zatvorenie súboru.

Po ukončení práce je potrebné súbor zavrieť pomocou funkcie fclose(), ktorá preberá ako parameter deskriptor súboru. Napríklad otvorme a zatvorme súbor:

$fd = fopen("form.php", "r") or die("súbor sa nepodarilo otvoriť"); fclose($fd);

Konštrukcia or die("text chyby") umožňuje skriptu zastaviť spustenie a zobraziť nejaké chybové hlásenie, ak funkcia fopen nedokázala otvoriť súbor.

Čítanie súboru

Na čítanie súboru môžete použiť niekoľko funkcií. Na čítanie po riadkoch sa používa funkcia fgets(), ktorá prijme deskriptor súboru a vráti jeden prečítaný riadok. Poďme si prejsť celý súbor riadok po riadku:

Zakaždým, keď sa volá fgets(), PHP umiestni ukazovateľ na koniec čítaného riadku. Na sledovanie konca súboru sa používa funkcia feof(), ktorá po dokončení súboru vráti hodnotu true. A kým sa nedosiahne koniec súboru, môžeme použiť funkciu fgets().

Čítanie celého súboru

V tomto prípade nemusíme explicitne otvoriť súbor, získať popisovač a potom súbor zatvoriť.

Blokovať čítanie

Môžete tiež čítať blok po bloku, to znamená čítať určitý počet bajtov zo súboru pomocou funkcie fread():

Funkcia fread() má dva parametre: popisovač súboru na čítanie a počet bajtov na čítanie. Pri čítaní bloku sa ukazovateľ v súbore presunie na koniec tohto bloku. A tiež pomocou funkcie feof() môžete sledovať dokončenie súboru.

Napíšte súbor

Ak chcete zapísať súbor, použite funkciu fwrite(), ktorá do súboru zapíše nasledujúci riadok:

Ďalšia funkcia fputs() funguje podobne:

Práca s ukazovateľom súboru

Pri otváraní súboru na čítanie alebo zápis v režime "w" sa ukazovateľ v súbore umiestni na začiatok. Pri čítaní dát PHP presunie ukazovateľ v súbore na koniec bloku čítaných dát. S ukazovateľom v súbore však môžeme manipulovať aj ručne a nastaviť ho na ľubovoľné miesto. Ak to chcete urobiť, musíte použiť funkciu fhľadať, ktorý má nasledujúcu formálnu definíciu:

Int fseek (zdroj $handle , int $offset [, int $whence = SEEK_SET ])

Parameter $handle predstavuje popisovač súboru. Parameter $offset je posun v bajtoch vzhľadom na začiatok súboru, od ktorého sa začne čítanie/zápis. Tretí voliteľný parameter určuje, ako sa nastaví posun. Môže nadobudnúť tri hodnoty:

    SEEK_SET: predvolená hodnota, nastavuje posun v bajtoch posunu vzhľadom na začiatok súboru

    SEEK_CUR : nastavuje posun v bajtoch posunu vzhľadom na začiatok aktuálnej pozície v súbore

    SEEK_END : nastaví posun na posunutie bajtov od konca súboru

Ak je ukazovateľ úspešne nainštalovaný, funkcia fseek() vráti 0 a ak je ukazovateľ neúspešný, vráti hodnotu -1.

Príklad použitia funkcie:

$fd = fopen("ahoj.txt", "w+") alebo die("súbor sa nepodarilo otvoriť"); $str = "Ahoj svet!"; // riadok na zápis fwrite($fd, $str); // napíšeme riadok na začiatok fseek($fd, 0); // umiestnime ukazovateľ súboru na začiatok fwrite($fd, "Oink"); // napíšeme riadok na začiatok fseek($fd, 0, SEEK_END); // umiestnime ukazovateľ na koniec fwrite($fd, $str); // napíšeme ďalší riadok na koniec fclose($fd);

A teraz bude pomerne veľká, no nie komplikovaná lekcia o práci so súbormi v PHP. Po prvé, na čo sú súbory? Koniec koncov, všetko môžete uložiť do MySQL alebo PostgreSQL alebo akejkoľvek inej databázy. Niekedy však existujú úlohy, keď sa neodporúča používať databázu so všetkým spracovaním a starostlivosťou o bezpečnosť pripojenia. Napríklad potrebujeme vytvoriť bežné počítadlo, ale predtým sme v projekte nepoužívali databázu. Mali by sme si v záujme jedného maličkého počítadla vytvoriť databázu a uložiť do nej len pár riadkov? Tu je oveľa jednoduchšie používať súbory. Navyše niekedy hosting vôbec nepodporuje databázy, vtedy sú súbory vo všeobecnosti jedinou možnosťou.

No povedzme, že som vás presvedčil, že súbory sú potrebné :) Teraz poďme na to, ako s nimi pracovať. Ako vytvárať, otvárať, písať, prepisovať, čítať atď. Najprv veci.

Vytvorte súbor

PHP používa na otváranie súborov funkciu fopen. Dokáže však vytvárať aj súbory. Ak zadáte fopen názov súboru, ktorý neexistuje, vytvorí ho.

Samotná funkcia fopen má dva parametre, z ktorých oba sú povinné. Najprv musíme zadať názov súboru, ktorý chceme otvoriť. Po druhé, odovzdajte parameter, ktorý funkcii povie, čo plánujeme urobiť s týmto súborom (napríklad čítanie zo súboru, zápis atď.).

Ak potrebujeme vytvoriť súbor, tak zadáme jeho názov a odovzdáme mu parameter, že chceme doň zapisovať dáta. Poznámka: PHP musíme povedať, čo do súboru zapisujeme, inak nevytvorí nový súbor.

Príklad:

$ourFileName = "testFile.txt";

$ourFileHandle = fopen($ourFileName, "w") or die("nie je možné otvoriť súbor");

fclose($ourFileHandle);

Prvý riadok $ourFileName = testFile.txt vytvorí reťazcovú premennú, do ktorej uložíme názov súboru.

Druhý riadok $ourFileHandle = fopen($ourFileName, ‘w’) alebo die(“nie je možné otvoriť súbor”) vytvára alebo otvára existujúci súbor na zápis. Alebo vráti správu, že nemôže otvoriť súbor.

Tretí riadok fclose($ourFileHandle) zatvorí súbor. Je to vlastne jednoduché.

Možnosti otvárania súboru v php

Prvý parameter 'r' (read) - otvorí súbor len na čítanie, nemôžete doň zapisovať.

Druhý parameter „w“ (write) – otvorí sa na zápis. V tomto prípade bude záznam vždy pokračovať od začiatku súboru. Ak tam už nejaké informácie sú, budú prepísané.

Tretí parameter 'a' (append) - otvorí súbor na zápis, ale na rozdiel od w sa pripojí na koniec súboru.

Pokročilé nastavenia:

Parameter 'r+' - otvára sa pre čítanie aj zápis. Ukazovateľ bude na začiatku súboru.

Parameter 'w+' - otvorí sa pre čítanie aj zápis, ALE vymaže všetky informácie, ktoré boli v súbore!!!

parameter 'a+' - otvorí sa na čítanie a zápis, ale ukazovateľ bude na konci súboru.

Prirodzene, len jeden z týchto parametrov môže byť odovzdaný funkcii a nie niekoľko. Je potrebné ich nahradiť „X“:

fopen($ourFileName, "X")

Zápis do súboru

Teraz sme otvorili súbor, vybrali parameter, ktorý potrebujeme, čo ďalej? Treba tam niečo napísať. Ako to spraviť? Pomocou funkcie fwrite, ktorá berie ako parametre ukazovateľ na súbor a riadok textu, ktorý chceme napísať. Príklad:

$myFile = "testFile.txt";

$fh = fopen($myFile, "w") or die("nie je možné otvoriť súbor");

$stringData = "Prvý riadok";

fwrite($fh, $stringData);

$stringData = "Druhý riadok";

fwrite($fh, $stringData);

Vytvorili sme súbor testFile.txt, ukazovateľ naň je uložený v premennej $fn. Napísali sme do nej riadok „Prvý riadok“ (na konci sme použili symbol konca riadku n) a potom „Druhý riadok“. Potom spis uzavreli.

POZOR! Nikdy nezabudnite zavrieť svoje súbory! V opačnom prípade, ak sa vykonávanie skriptu ukončí abnormálne, údaje v súboroch sa neuložia! Po práci vždy používajte fclose!!!

Čítanie zo súboru

Napísali sme to, teraz si to prečítajte! Ani to nie je také ťažké. Používame funkciu fread. Ako vstup mu dáme ukazovateľ na súbor a počet bajtov, ktoré chceme prečítať. Napríklad jeden znak sa rovná jednému bajtu (v závislosti od kódovania), chceme prečítať 5 znakov: $theData = fread($fh, 5).

Ale ak potrebujeme získať všetky informácie, ktoré sú v súbore, potom budeme potrebovať funkciu filesize, ktorá vráti počet bajtov v súbore, teda ak je výsledok funkcie filesize odovzdaný freadu, potom budeme získať všetky informácie zo súboru:

$myFile = "testFile.txt";

$fh = fopen($myFile, "r");

$theData = fread($fh, veľkosť súboru($myFile));

Dúfam, že som to vysvetlil jasne.

$myFile = "testFile.txt";

$fh = fopen($myFile, "r");

$theData = fgets($fh);

V dôsledku toho dostaneme prvý riadok zo súboru testFile.txt. Ak chcete prejsť všetkými riadkami, musíte použiť slučku foreach:

$lines = file("testFile.txt");

foreach($lines ako $single_line)

echo $single_line . "
n";

Teraz ste sa naučili otvárať súbory na čítanie, zápis alebo oboje. Zapíšte do nich údaje alebo ich pridajte navrch pomocou funkcie Pripojiť a tiež z nich prečítajte informácie.

Ak sa učíte pracovať s PHP sami, potom je dôležité naučiť sa čítať dáta zo súboru a robiť v nich zmeny. Zaznamenávanie do súboru php sa vykonáva pre vývoj webových aplikácií, zmeny informácií o serveri a spúšťanie externých programov a inklúzií.

Ako pracovať so súbormi php

Ak má súbor takúto príponu, znamená to, že obsahuje programový kód napísaný v programovacom jazyku s rovnakým názvom. Ak chcete vykonať zmeny, budete si musieť do počítača nainštalovať jeden zo softvérových editorov:

PHP Expert Editor;
. Dreamweaver;
. Vývoj Eclipse PHP;
. PHPEdit.

Ak vytvárate webovú stránku, potom často potrebujete použiť identické návrhy, ktoré sú pohodlne uložené ako šablóny v inom súbore. Na tento účel je lepšie použiť include. Po zadaní tejto funkcie je potrebné do súboru php napísať názov a príponu pripojenia, napríklad include 1.php. Tento dizajn podporuje viacnásobné čítanie priloženého súboru a ďalšou vlastnosťou je kontinuita vykonávania kódu v prípade chyby. Ak sa niečo pokazí, kód sa bude naďalej vykonávať z nového riadku.
Týmto spôsobom zahrniete súbor do kódu. Ďalším spôsobom je zadať požiadavku. Na rozdiel od vyššie popísaného zahrnutia je súbor zahrnutý pred spustením programového kódu, ale môžete k nemu pristupovať iba raz.

Overenie súboru

Pred zápisom do súboru php sa musíte uistiť, že existuje, a potom ho otvoriť a vykonať potrebné úpravy. Na tento účel môžete použiť funkciu file_exists(); ak potvrdí prítomnosť, v okne editora sa vráti odpoveď TRUE, inak - FALSE.
Ďalšia funkcia is_file() vás môže upozorniť, že je možné zapisovať dáta do php súboru. Je spoľahlivejší ako file_exits a väčšina programátorov používa na spustenie is_file. Po overení, že súbor existuje, môžete s ním začať pracovať.

Vykonávanie zmien v súbore

Prvý nástroj, ktorý môžete použiť na vykonanie zmien v súbore, je fwrite(). Píše riadky s nasledujúcou syntaxou:

Int - manipulátor;
. Reťazec je premenná.

Existuje ďalšia podobná funkcia - fputs(), čo je alias. Medzi týmito nástrojmi nie sú žiadne rozdiely, môžete si vybrať jeden alebo druhý. U študentov je bežnejší fwrite, zatiaľ čo praktizujúci programátori najčastejšie využívajú fputs.

Ak chcete urobiť PHP záznam do textového súboru, musí byť splnená jedna dôležitá podmienka - musí byť otvorený pre editáciu. Tento súbor musí byť umiestnený v priečinku s oprávneniami na zápis.

Ak chcete pracovať, skúste najskôr otvoriť textový dokument v programe a potom vykonať úpravy pomocou bežných nástrojov.

// Otvorenie textového súboru
$f = fopen("text.txt", "w");
// Napíšte reťazec textu
fwrite($f, "Dobrý deň! Dobrý deň!");
// Zatvorte textový súbor
fclose($f);

V tomto príklade je text.txt názov dokumentu. Môžete to nazvať inak: „Ahoj! Dobrý deň! - príklad textu, môže byť úplne ľubovoľný. Všetky zmeny sa automaticky uložia do otvoreného súboru.

Všimnite si, že PHP je všeobecný účel. Intenzívne sa využíva na tvorbu webových aplikácií. Toto riešenie podporuje väčšina poskytovateľov hostingu. Hovoríme o lídrovi medzi nástrojmi, ktoré sa používajú na tvorbu webových stránok. Teraz viete, ako zapisovať do súboru php.