string fgetss(resource file, integer length, string ignore)
Функция fgetss (листинг 9.13) во всех отношениях идентична функции fgets за исключением того, что она делает попытку отсечь HTML- или PHP-код в возвращаемой строке. Необязательный аргумент ignore определяет теги, которые могут быть пропущены функцией без изменений. Заметим, что игнорировать теги можно только в открывающихся формах. Другими функциями, предназначенными для чтения из файла, являются fgetc, fgetcsv, fgetss, fread и gzgetc. Если необходимо сохранить HTML-код, но заблокировать его интерпретацию, можно воспользоваться функцией htmlentities. 

| Листинг 9.13. Функция fgetss_
<?php
// открыть файл и распечатать каждую строку,
//отсекая весь HTML-код, за исключением определенных тегов
if($myFile = fopen("index.html", "r"))
{
while(!feof($myFile))
{
$myLine = fgetss($myFile, 1024, "<a>"); print($myLine);
}
fclose($myFile);
}

array file(string filename, boolean use_include_path)
Функция file возвращает весь файл в виде массива. Каждая строка файла представляет собой отдельный элемент массива, начиная с нулевого элемента. Разрывы строк включены в элементы массива. Необязательный аргумент use_include_path позволяет производить поиск файла в стандартном каталоге PHP include. До появления функции file_get_contents, для того чтобы поместить все строки в одну строку, в PHP-сценариях использовалась функция implode (листинг 9.14). Функция file не является безопасной с точки зрения работы с двоичными файлами, т.е. она не подходит для работы с двоичными файлами, которые могут содержать символы NUL.
Если необходимо отправить файл непосредственно в браузер, лучше использовать функцию readfile.

j Листинг 9.14. Функция file_
<?php
// открыть файл
$myFile = file("data.txt");
//свернуть элементы массива в одну строку
$myFile = implode("", $myFile);
// распечатать весь файл
print($myFile);
?>

boolean file_exists(string filename)
Функция file_exists возвращает значение TRUE, если указанный файл существует, и значение FALSE - если не существует. Эта функция представляет собой отличный способ обхода ошибок, возникающих при работе других файловых функций. В листинге 9.15 перед отправкой в браузере проверяется существование файла. В отличие от многих других функций, работающих с файловой системой, эта функция не принимает URL. Можно проверить файлы на предмет существования с использованием функции fopen и подавления вывода сообщений об ошибках с помощью оператора @. Помните, что Web-сервер при отсутствии требуемого файла возвращает ошибку 404, и в случае использования оператора @ создается впечатление, что искомый файл существует. Может потребоваться более элегантное решение, которое анализирует возвращаемый код, приходящий от Web-сервера в этом случае. 

j Листинг 9.15. Функция file exists_
<?php
$filename = "data.txt";
// если файл существует, распечатать его if(file_exists($filename))
{
readfile($filename);
}
else
{
print("'$filename' не существует");
}
?>

string file_get_contents(string filename, boolean use_include_path)
Функция file_get_contents возвращает в виде строки полное содержимое указанных файлов. Эта функция безопасна в использовании с двоичными файлами, что делает ее удобной для выполнения операции загрузки файлов изображений. Необязательный аргумент use_include_path позволит отыскать нужный файл в стандартном каталоге include. Эта функция может считывать файлы, определенные в URL. При планировании отправки файла прямо в браузер необходимо воспользоваться возможностями другой функции - readfile.