file_put_contents
(PHP 5)
file_put_contents — Пишет строку в файл
Описание
int file_put_contents
(
string $filename
,
mixed $data
[,
int $flags = 0
[,
resource $context
]] )
Если filename не существует, файл будет
создан. Иначе, существующий файл будет перезаписан, за исключением
случая, если указан флаг FILE_APPEND.
Список параметров
-
filename
-
Путь к записываемому файлу.
-
data
-
Записываемые данные. Может быть string,
array или ресурсом stream.
Если data является ресурсом stream,
оставшийся буфер этого потока будет скопирован в указанный
файл. Это похоже на использование функции stream_copy_to_stream().
Также вы можете передать одномерный массив в качестве параметра
data. Это будет эквивалентно вызову
file_put_contents($filename, implode('', $array)).
-
flags
-
Значением параметра flags может быть
любая комбинация следующих флагов, соединенных бинарным
оператором ИЛИ (|).
Доступные флаги
Флаг |
Описание |
FILE_USE_INCLUDE_PATH
|
Ищет filename в подключаемых директориях.
Подробнее смотрите директиву include_path.
|
FILE_APPEND
|
Если файл filename уже существует, данные
будут дописаны в конец файла вместо того, чтобы его перезаписать.
|
LOCK_EX
|
Получить эксклюзивную блокировку на файл на время записи.
|
-
context
-
Корректный ресурс контекста, созданный с помощью функции
stream_context_create().
Возвращаемые значения
Функция возвращает количество записанных байт в файл, или
FALSE в случае ошибки.
ВниманиеЭта функция
может возвращать как boolean FALSE, так и не-boolean значение,
которое приводится к FALSE. За более подробной информацией обратитесь к разделу
Булев тип. Используйте оператор === для проверки значения,
возвращаемого этой функцией.
Примеры
Пример #1 Пример простого использования
<?php
$file = 'people.txt';
// Открываем файл для получения существующего содержимого
$current = file_get_contents($file);
// Добавляем нового человека в файл
$current .= "John Smith\n";
// Пишем содержимое обратно в файл
file_put_contents($file, $current);
?>
Пример #2 Использование флагов
<?php
$file = 'people.txt';
// Новый человек, которого нужно добавить в файл
$person = "John Smith\n";
// Пишем содержимое в файл,
// используя флаг FILE_APPEND flag для дописывания содержимого в конец файла
// и флаг LOCK_EX для предотвращения записи данного файла кем-нибудь другим в данное время
file_put_contents($file, $person, FILE_APPEND | LOCK_EX);
?>
Примечания
Замечание: Эта функция безопасна
для обработки данных в двоичной форме.
ПодсказкаДля этой функции вы можете использовать URL
в качестве имени файла, если была включена опция fopen wrappers. Смотрите более
подробную информацию об определении имени файла в описании функции
fopen(). Смотрите также список поддерживаемых оберток URL, их возможности, замечания по использованию и список
предопределенных констант в Поддерживаемые протоколы и обработчики (wrappers).