Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Vtoraya_chast_uchebnika_po_WWW_Okonchat_variant...doc
Скачиваний:
33
Добавлен:
27.09.2019
Размер:
6.06 Mб
Скачать

Пример 5‑58

<?php

$novpath="D:/FilesForPHP/file4.txt";

$handle = fopen($novpath, "r");

$format ="%u-%u-%u %s %s";

while(!feof($handle))

{

fscanf($handle,$format,&$month,&$day,&$year,&$first,&$last);

echo "Имя: $first<BR>";

echo "Фамилия:$last<BR>";

echo "Дата рождения: $month/$day/$year<BR>";

}

fclose($handle);

?>

Результат обработки представлен на Рис. 5 -20

Рис. 5‑20. Результат обработки файла file4.txt скриптом примера Пример 5 -58

5.4. Функции для операций над каталогами

В большинстве операционных систем каталоги (директории) – это специальные файлы, в которых хранится список файлов и подкаталогов. С точки зрения операционной системы каталог (директория) – это файл, в котором хранятся имена и информация о местоположении других каталогов и файлов. Уметь управлять каталогами для программиста так же важно, как и файлами, хотя во многих случаях среды разработки при создании новых проектов создают их и размещают в них файлы автоматически (как, например, IDE Net Beans и Visual Studio).

Работа с каталогами в PHP осуществляется через специальные функции, отличающиеся от рассмотренных выше функций по работе с обычными файлами. Тем не менее, логика работы с каталогами соответствует логике работы с файлами, хранящими данные. В частности, для таких файлов-каталогов существует дескриптор (англоязычный аналог – handle (читается хэндл)). Так же, как и при работе с файлами, перед началом работы с каталогом его следует открыть, а после окончания работы - закрыть48. Существует и указатель очередного элемента каталога, последовательно переходящий от одного элемента к другому после окончания работы с предыдущим.

Однако, при дальнейшей работе надо помнить, что в каталоге кроме подкаталогов и файлов имеются элементы "." и ".." . Первый элемент указывает на текущий каталог, а второй - на родительский (смотри раздел 5.2.2).

Поскольку задач по работе с каталогами меньше, чем по работе с обычными файлами, то и функций по работе с ними соответственно меньше. Они представлены в таблице Таблица 5.2.

С каждым процессом и, естественно, с работающим сценарием, связан (ассоциирован) свой текущий или рабочий каталог. Все действия по работе с файлами по умолчанию осуществляются в нём. Так, если при открытии файла указать его имя, то PHP будет искать файл именно в таком каталоге.

Таблица 5‑15

Перечень функций по работе с каталогами

п.п.

Название

Описание

1

chdir

Сменить каталог

2

chroot

Сменить корневой каталог

3

closedir

Освободить дескриптор каталога

4

dir

Класс директории (в настоящем пособии не рассматривается)

5

getcwd

Получить имя текущего рабочего каталога

6

opendir

Открыть каталог. Устанавливает внутренний указатель на первый файл каталога.

7

readdir

Получить элемент каталога по его дескриптору. Возвращает имя текущего элемента каталога, начиная с первого, и перемещает внутренний указатель на следующий элемент, делая его текущим.

8

rewinddir

Реинициализтор дескриптора каталога. Сбрасывает внутренний указатель каталога на первый файл текущего каталога. После вызова этой функции, функция readdir() будет возвращать имена файлов в начало списка этого каталога.

9

scandir

Получить список элементов каталога, расположенного по указанному пути.

10

is_dir

Определяет, является ли файл директорией

11

dirname

Возвращает имя каталога из указанного пути

12

mkdir

Создаёт директорию

13

rmdir

Удаляет директорию