ТОП-10 популярных



Для работы с вещественными числами в MySQL предусмотрено три типа данных - это типы FLOAT, DOUBLE, DECIMAL. Числовой тип FLOAT...

НОУТБУК с блестящим экраном
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...

БОЛЬШЕ БОЛЬШИХ LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...

Больше больших LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...

Магнито-оптический дисковод DynaMO
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...

Иди и пиши. TravelMate C100
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...

ПОД ЛИТЕРОЙ «N»
Aтаку LCD-мониторов не остановить, а масштабы этого наступления даже немного пугают. Судите сами — многие пользователи только начинают приглядываться к новому для...


Для длинных строк, т.е. строк длиннее 255 символов, в MySQL предусмотрены типы BLOB (Binary Large Object, большой двоичный объект) и...

Размер объему не помеха.
С тех пор как компания Fujitsu отказалась от производства жестких дисков для настольных компьютеров, многие пользователи начали забывать о том,...


Какую только информацию мы не помещаем на компакт-диски: резервные копии важных данных, музыку, фильмы... Многие полагают, что главное - «купить...

PHP. Операционная система. Часть Четвёртая.


28-12-2009

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.

Понравился материал? Поделитесь с друзьями!



<< Предыдущая статьяСледующая статья >>
PHP. Операционная система. Часть Третья PHP. Операционная система. Часть Пятая.