Главная > РНР: настольная книга программиста
НАПИШУ ВСЁ ЧТО ЗАДАЛИ
СЕКРЕТНЫЙ БОТ В ТЕЛЕГЕ
<< Предыдущий параграф Следующий параграф >>
Пред.
След.
Макеты страниц

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

Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике

ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO

26.10. PHP: Установка времени модификации файла

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

Для чего это используется? Например, вы написали скрипт, который проверяет лог-файл на изменения или же просто периодически заносит новые сведения. Обращение к данному файлу осуществляется посредством изменяемого времени, т. е. возникает необходимость, чтобы каждый день происходило изменение времени модификации, иначе может возникнуть какая-либо ошибка. Когда произвести модификацию физически невозможно из-за некоторых существенных факторов, появляется необходимость проделать это программно. В таком случае используют функцию установления времени модификации. Ее синтаксис:

int touch(string filename [, int time])

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

В случае отсутствия указанного файла функция просто создаст новый и присвоит ему установленное время модификации.

Функция touch() возвращает true при успешном выполнении, при возникновении какой-либо ошибки функция возвратит false.

Рассмотрим пример:

<?php

if (!touch ($path)) {

    print "Ошибка, невозможно изменить время модификации файла".

    basename($path);

}

else {

    print "Время модификации файла ". basename ($path) ," было изменено <br>n";

}

?>

В процессе выполнения приведенного примера дата и время модификации файла будут изменены на текущее, так как в нашем случае не указано время, на которое необходимо изменять. Проверить правильность изменения времени можно при помощи функции filemtime(). В результате работы данного скрипта функция touch приведенная в операторе условия, будет возвращать значение true, что в свою очередь приведет к выполнению следующего блока программы. В итоге на экран браузера будет выведено:

Время модификации файла newname.txt было изменено на

Обратите внимание: теперь, когда мы знаем принцип работы функции basename() (см. п. 26.1), мы без проблем можем ее применять для вывода только файла, без указания конкретного пути до этого файла.

Функция модификации времени файла touch() работает в РНР 3 и РНР 4.

1
Оглавление
email@scask.ru