Функции за работа с файловата система
PHP Manual

fwrite

(PHP 4, PHP 5)

fwriteДвоично-безопасно записване във файл

Описание

int fwrite ( resource $handle , string $string [, int $length ] )

fwrite() записва съдържанието на string във файловия поток сочен от handle .

Параметри

handle

Указателен файлов ресурс, който обикновено се създава посредством fopen().

string

Низът, който ще бъде записан.

length

Ако е подаден параметър length , записа ще спре след като length байта са записани или докато се достигне края на string , което от двете се случи първо.

Имайте предвид, че ако е подаден параметър length конфигурационната опция magic_quotes_runtime ще бъде игнорирана и няма да бъдат изрязани наклонените черти (ако има) от string .

Връщани стойности

fwrite() връща броя на записаните байтове или FALSE при грешка.

Бележки

Забележка: При операционни системи, които правят разлика между двоични и текстови файлове (като Windows), файлът трябва да е отворен с флаг "b" при извикването на fopen().

Забележка: Ако сте отворили файла сочен от handle с fopen() в режим на добавяне, записванията на fwrite() са атомични (освен в случаите, когато размера на string надвишава размера на блока на файловата система (при някои платформи); важи само за локални файлове). Това означава, че няма нужда да използвате flock() за да заключите ресурс преди да извикате fwrite() - данните ще бъдат записани без прекъсване.

Забележка: Ако запишете два пъти във указател към файл, вторите данни ще бъдат добавени към края на файла, т.е. следващия пример няма да работи както е очаквано:

<?php
$fp 
fopen('data.txt''w');
fwrite($fp'1');
fwrite($fp'23');
fclose($fp);

// Съдържанието на 'data.txt' сега е 123, а не 23!
?>


Примери

Example #1 Прост пример за използване на fwrite()

<?php
$filename 
'test.txt';
$somecontent "Add this to the file\n";

// Нека се уверим, че файла съществува и можем да пишем в него
if (is_writable($filename)) {

    
// В нашия пример отваряме $filename в режим за добавяне.
    // Файловия указател е в края на файла и, т.е. там ще отидат данните записани с fwrite() 
    
if (!$handle fopen($filename'a')) {
         echo 
"Не мога да отворя ($filename)";
         exit;
    }

    
// Записа $somecontent в напия отворен файл
    
if (fwrite($handle$somecontent) === FALSE) {
        echo 
"Не мога да записвам ($filename)";
        exit;
    }

    echo 
"Успех, записах ($somecontent) във файл ($filename)";

    
fclose($handle);

} else {
    echo 
"Не може да се пише в файл $filename";
}
?>

Вж. също


Функции за работа с файловата система
PHP Manual