fopen
Открывает файл для чтения или записи по частям.
Синтаксис
fopen(string $filename, string $mode): resource|falseПараметры
| Параметр | Тип | Описание |
|---|---|---|
| $filename | string | Путь к файлу. |
| $mode | string | Режим: `r` — чтение, `w` — запись с очисткой, `a` — дозапись. |
Возвращаемое значение
resource|falseУказатель на файл или `false` при ошибке.
Примеры
Чтение файла построчно:
<?php
$file = sys_get_temp_dir() . '/ref-fopen.txt';
file_put_contents($file, "first\nsecond\n");
$handle = fopen($file, 'r');
while (($line = fgets($handle)) !== false) {
echo strtoupper(rtrim($line)), "\n";
}
fclose($handle);Результат:
FIRST
SECONDЗапись по частям:
<?php
$file = sys_get_temp_dir() . '/ref-fwrite.txt';
$handle = fopen($file, 'w');
fwrite($handle, "one\n");
fwrite($handle, "two\n");
fclose($handle);
echo file_get_contents($file);Результат:
one
twoПримечания
Так читают большие файлы: в памяти в каждый момент только одна строка. Открытый файл обязательно закрывают функцией fclose().
См. также
- file_get_contents — Читает файл целиком в строку.
- fgetcsv — Читает строку файла CSV и разбирает её на поля.
- file — Читает файл в массив строк.
Вопросы и ответы по теме
В учебнике
- Чтение и запись файлов — Работа с файлами в PHP — запись, чтение, дозапись, чтение по строкам, проверка существования и удаление.