Как создать файл с помощью PHP и записать в него что-то
Я использую запись в файл для вывода отладочной информации в php
<?php $perem = 100; // Предположим необходимо вывести информацию о этой переменной $text = "<h1>Файл логов</h1>"; // строка, которую будем записывать $text .= "Значение какой то переменной: ".$perem; $fp = fopen("log-file.html", "w"); // открываем файл, если файл не существует, делается попытка создать его fwrite($fp, $text); // записываем в файл текст fclose($fp); // закрываем ?>
Здесь же рассмотрим возможные варианты параметра mode функции fopen:
- ‘r’ – Открыть только для чтения; поместить указатель в начало файла;
- ‘r+’ – Открыть для чтения и записи; поместить указатель в начало файла;
- ‘w’ – Открыть только для записи; поместить указатель в начало файла и усечь файл до нулевой длины. Если файл не существует, делается попытка создать его;
- ‘w+’ – Открыть для чтения и записи; поместить указатель в начало файла и усечь файл до нулевой длины. Если файл не существует, делается попытка создать его;
- ‘a’ – Открыть только для записи; поместить указатель в конец файла. Если файл не существует, делается попытка создать его;
- ‘a+’ – Открыть для чтения и записи; поместить указатель в конец файла. Если файл не существует, делается попытка создать его.
Недавно я писал о том как можно вывести массив на экран. Если необходимо вывести массив в файл, то можно использовать следующую заготовку:
Массив для вывода: $arr[] = "PHP"; $arr[] = "MySQL"; $arr[] = "Apache"; $text = "<h1>Файл логов</h1>"; // строка, которую будем записывать $text .= "<pre>"; $text .= print_r($arr, true); $text .= "</pre>"; $fp = fopen("log-file.html", "w"); fwrite($fp, $text); // записываем в файл текст fclose($fp); // закрываем
Функция print_r() выводит пригодную для чтения человеком информацию о переменной. Когда второй параметр TRUE, то print_r() возвратит информацию, а не будет печатать его.