/
Práce se soubory

File_put_contents

22. 08. 2019

Obsah článku

Funkce **file_put_contents** je vhodná pro automatický zápis do souboru. Alternativně lze použít taky fopen(), kterou začátečníkům nedoporučuji.

Ukázka

$file = 'soubor.txt';
$content = 'Obsah k uložení do souboru.';
file_put_contents($file, $content);

file_put_contents má 2 parametry:

  • název souboru kam budeme zapisovat,
  • obsah souboru, který zapíšeme.

Pozor: file_put_contents() soubor přepíše nejnovějším obsahem.

Pozor na přepsání

Pokud budete přes file_put_contents ukládat, dejte si pozor na přepsání dat. Funkce totiž celý aktuální obsah smaže a nahradím obsahem novým. Pokud tedy chcete text pouze připsat, můžete buď na začátek nebo na konec pomocí vlastního scriptu:

$file = 'soubor.txt';
$content = 'Nový obsah.';
$oldContent = file_get_contents($file);
file_put_contents($file, $content . $oldContent);

Nejprve se tedy soubor otevře, pak se připíše nový obsah, a za něj se připíše původní obsah...

Pokud chceme přidat starý obsah před nový, stačí script lehce upravit:

$file = 'soubor.txt';
$content = Nový obsah.';
$oldContent = file_get_contents($soubor);
file_put_contents($file, $oldContent . $content);

Jan Barášek   Více o autorovi

Autor článku pracuje jako seniorní vývojář a software architekt v Praze. Navrhuje a spravuje velké webové aplikace, které znáte a používáte. Od roku 2009 nabral bohaté zkušenosti, které tímto webem předává dál.

Rád vám pomůžu:

Související články

1.

Potřebujete poradit s PHP?

Nabízím trénink vývojářů, konzultace, školení a analýzu návrhových vzorů. Osobně v Praze nebo online.

Napište mi, pokud si nevíte rady.

Lektor: Jan Barášek