Язык программирования PHP | страница 82
Эта функция возвращает TRUE, если соединение успешно закрыто, и FALSE - в противном случае. Параметр этой функции должен указывать на файл, успешно открытый, например, с помощью функции fopen().
>
>$h = fopen("my_file.html","w");
>fclose($h);
?>
Конечно, если не закрывать соединение с файлом, никаких ошибок выполнения скрипта не произойдет. Но в целом для сервера это может иметь серьезные последствия. Например, хакер может воспользоваться открытым соединением и записать в файл вирус, не говоря уже о лишней трате ресурсов сервера. Так что советуем всегда закрывать соединение с файлом после выполнения необходимых действий.
Запись данных в файл
Функция fwrite
Для того чтобы записать данные в файл, доступ к которому открыт функцией fopen(), можно использовать функцию fwrite(). Синтаксис у нее следующий:
>int fwrite ( указатель на файл,
> строка [, длина])
Эта функция записывает содержимое строки в файл, на который указывает указатель на файл. Если указан дополнительный аргумент длина, то запись заканчивается после того, как записано количество символов, равное значению этого аргумента, или когда будет достигнут конец строки.
В результате своей работы функция fwrite() возвращает число записанных байтов или false, в случае ошибки.
Пример 9.3. Пусть в нашей рабочей директории нет файла my_file.html. Создадим его и запишем в него строку текста:
>
>$h = fopen("my_file.html","w");
>$text = "Этот текст запишем в файл.";
>if (fwrite($h,$text))
> echo "Запись прошла успешно";
>else
> echo "Произошла ошибка при записи данных";
>fclose($h);
?>
В результате работы этого скрипта в браузере мы увидим сообщение о том, что запись прошла успешно, а в файле my_file.html появится строка "Этот текст запишем в файл.". Если бы этот файл существовал до того, как мы выполнили этот скрипт, все находящиеся в нем данные были бы удалены.
Если же мы напишем такой скрипт:
>
>$h = fopen("my_file.html","a");
>$add_text = "Добавим текст в файл.";
>if(fwrite($h,$add_text,7))
> echo "Добавление текста прошло
> успешно
";
>else echo "Произошла ошибка при
> добавлении данных
";
>fclose($h);
?>
то к строке, уже существующей в файле my_file.html, добавится еще семь символов из строки, содержащейся в переменной $add_text, т.е. слово «Добавим»
Функция fwrite() имеет псевдоним fputs(), используемый таким же образом, что и сама функция.
Далее мы рассмотрим, какие методы чтения данных из файла предлагает язык PHP.
Чтение данных из файла