integer linkinfo(string filename)
Функция linkinfo вызывает С-функцию lstat для заданного аргументом filename файла и возвращает поле st_dev, созданное функцией lstat. Это можно использовать для проверки существования ссылки. В случае ошибки эта функция возвращает значение FALSE. Подробнее о функции lstat можно узнать на справочной man-странице или в справочном файле по Microsoft Visual С++.
array lstat(string filename)
Функция lstat (листинг 9.27) выполняет С-функцию stat и возвращает массив. Массив содержит 13 элементов, пронумерованных начиная с нуля. Когда аргумент filename указывает на символическую ссылку, массив отражает эту ссылку, а не сам файл, на который указывает эта ссылка. При вызове по символической ссылке функция stat всегда возвращает информацию о файле. В табл. 9.6 описывается содержимое массива, который содержит две копии данных. На одну копию ссылка делается с помощью целого числа, на другую - с помощью имени.
Листинг 9.27. Функция lstat
<?php
$statInfo = lstat("data.txt"); if(eregi("windows", PHP_OS))
{
// распечатать полезную информацию для ОС Windows printf("Устрoйствo: %c <br>n", ($statInfo[0]+65)); printf("Режим: %o <br>n", $statInfo[2]); print(" Ссылки: $statInfo[3] <br>n"); print("Размер: $statInfo[7] bytes<br>n"); printf(" Время последнего доступа: %s <br>n", date("F d, Y", $statInfo[8]));
printf(" Время последней модификации: %s <br>n", date("F d, Y", $statInfo[9])); printf(" Создан: %s <br>n", date("F d, Y", $statInfo[10]));
}
else
{
// распечатать полезную информацию для ОС Unix print(" Устройство: $statInfo[0] <br>n"); print("INode: $statInfo[1] <br>n"); printf(" Режим: %o <br>n", $statInfo[2]); print(" Ссылки: $statInfo[3] <br>n");
print("Идентификатор пользователя (UID): $statInfo[4] <br>n");
print(" Идентификатор группы (GID): $statInfo[5] <br>n"); print("Тип устройства: $statInfo[6] <br>n"); print(" Размер: $statInfo[7] bytes<br>n"); printf(" Время последнего доступа: %s <br>n",
date("F d, Y", $statInfo[8]));
printf(" Время последней модификации: %s <br>n",
date("F d, Y", $statInfo[9]));
printf(" Время последнего изменения: %s <br>n",
date("F d, Y", $statInfo[10]));
print(" Размер блока: $statInfo[11] <br>n"); print("Блoкoв: $statInfo[12] <br>n");
}
?>
string md5_file(string filename)
Функция md5_file возвращает исходный файл, закодированный с использованием MD5. Код MD5 представляет собой 128-битовые числа, представленные в виде текстовых строк, идентифицирующих файлы.
boolean mkdir(string directory, integer mode)
Функция mkdir (листинг 9.28) создает новый каталог с заданным именем. Разрешения присваиваются на основе аргумента mode, который работает в соответствии с командой chmod. Под управлением Windows аргумент mode игнорируется. Для удаления каталога используется функция rmdir.
| Листинг 9.28. Функция mkdir_
<?php
if(mkdir("myDir", 0777))
{
print(" каталог создан");
}
else
{
print(" невозможно создать каталог");
}
?>
boolean move_uploaded_file(string filename, string destination)
Функция move_uploaded_file совмещает возможности функций is_uploaded_file и rename. Если указанный файл загружен, он будет переименован в результирующий файл. Если файл не загружен или переименование завершилось неуспешно, функция возвращает значение FALSE.
array parse_ini_file(string filename, boolean process_sections)
Функция parse_ini_file выполняет синтаксический анализ текстового файла, формат которого соответствует формату, используемому конфигурационными файлами, имеющими расширение .ini. За указанными установками следуют значения, разделенные знаком равенства (=). Значения могут содержать специальные символы, которые должны браться в кавычки. Комментарии, которые игнорируются синтаксическим анализатором, начинаются точкой с запятой (;). Существует возможность разбить установки конфигурационных настроек на разделы; названия этих разделов заключаются в квадратные скобки. В листинге 9.29 показан пример конфигурационного файла, а в листинге 9.30 - пример синтаксического анализа содержимого из листинга 9.29. На рис. 9.1 показан результат работы функции. При отсутствии process_sections разделы учитываться не будут. При задании его значения равным TRUE, функция возвращает двухмерный массив, разделив установки на подмассивы с именами разделов.
Листинг 9.29. Пример конфигурационного файла
; Пример конфигурационного файла: test.ini
; Для обозначения комментария используется точка с запятой.
[User Interface] text = "#333333" highlight = "#FF3333"
[Database] username = php password = secret dbname = ft3
Листинг 9.30. Функция parse_ini_file
<?php
print_r(parse_ini_file('test.ini'));
print("n");
print_r(parse_ini_file('test.ini', TRUE));
?>
integer opendir(string directory)
Функция opendir (листинг 9.31) принимает в качестве аргумента имя каталога и возвращает дескриптор каталога. Этот дескриптор могут использовать в своей работе функции readdir, rewinddir и closedir. Описанная выше функция dir является альтернативой этой группе функций.
j Листинг 9.31. Функция opendir_
<table border="1"> <tr>
<th>Filename</th>
<th>Size</th>
</tr>
<?php
// открыть каталог
$myDirectory = opendir(".");
// просмотреть все элементы
while($entryName = readdir($myDirectory))
{
print("<tr>");
print("<td>$entryName</td>"); print("<td align="right">"); print(filesize($entryName));
print("</td>");
print("</tr>n");
}
// закрыть каталог closedir($myDirectory);
?>
</table>
ТОП-10 популярных
Для работы с вещественными числами в MySQL предусмотрено три типа данных - это типы FLOAT, DOUBLE, DECIMAL. Числовой тип FLOAT...
БОЛЬШЕ БОЛЬШИХ LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Больше больших LCD-мониторов
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
Процесс вытеснения с рынка мониторов с электронно-лучевой трубкой (CRT) продолжается. О смещении акцентов в пользу LCD-мониторов теперь заявляют даже те...
НОУТБУК с блестящим экраном
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...
Eсли выпустившая ноутбук фирма предлагает его в качестве «замены настольному ПК», то это должно подразумевать под собой нечто большее, чем...
Иди и пиши. TravelMate C100
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...
Планшетный компьютер платформы Tablet PC обязан в первую очередь быть легким, способным достаточно долго работать без подзарядки батарей. Эти требования...
Магнито-оптический дисковод DynaMO
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...
Cейчас, когда традиционные флоппи-дисководы на долгие годы замерли в своем развитии, поиск альтернативных носителей продолжается, и ситуация, казалось бы, разрешилась...
Компьютер для гурманов.«Эксимер ДМ»
Российская компания «Эксимер ДМ», известная как производитель настольных компьютеров, рабочих станций, серверов и ноутбуков, выступила техническим спонсором проведения торжеств, посвященных...
Российская компания «Эксимер ДМ», известная как производитель настольных компьютеров, рабочих станций, серверов и ноутбуков, выступила техническим спонсором проведения торжеств, посвященных...
Для длинных строк, т.е. строк длиннее 255 символов, в MySQL предусмотрены типы BLOB (Binary Large Object, большой двоичный объект) и...
В дополнение к календарным типам, предназначенным для хранения даты и времени отдельно, MySQL также поддерживает гибридные типы данных DATETIME и...
Вообще, к изменению настроек сервера прибегают очень редко. В MySQL программа заранее настроена так, чтобы соответствовать самым распространенным и основным...
PHP. Операционная система. Часть Десятая.
28-12-2009
<< Предыдущая статья | Следующая статья >> |
PHP. Операционная система. Часть Девятая. | PHP. Операционная система. Часть Одиннадцатая. |