Это первая строка Это вторая строка Это третья строка
Для включения содержимого PHP-файла в текущий PHP-документ используется
функция include(). При этом PHP-сценарий, содержащийся во включенном файле,
выполняется так, как будто он является частью текущего документа.
Пусть имеется исходный PHP-документ:
<?php
echo “Это исходный документ <BR>”;
include(“D:/User/my_file.php”);
echo “Конец исходного документа <BR>”;
?>
Включаемый PHP-файл my_file.php имеет вид:
?php
echo "Это включаемый код <BR>";
echo "Суммируем 2 + 2 = ".(2+2), "<BR>";
echo "Конец включаемого кода <BR>";
?>
После выполнения исходного документа на экран будет выведено:
Это исходный документ Это включаемый код Суммируем 2 + 2 = 4 Конец включаемого кода Конец исходного документа
Внимание! Код включаемого файла должен находиться между дескрипторами:
<?php
?>
Если вставляемый файл не найден, то генерируется предупреждение, и выполнение
сценария продолжается. Если необходимо в этом случае остановить выполнение
сценария, то вместо функции include() используется аналогичная ей функция
Включаемый файл, как и функция, может возвращать вычисленное значение, если он
заканчивается оператором return.
Пусть имеется исходный PHP-документ:
<?php
echo “Вычисление произведения: <BR>”;
$result = include(“D:/User/my_func.php”);
echo “Произведение равно $result <BR>”;
?>
Включаемый PHP-файл my_func.php имеет вид:
?php
$proizv = 2 * 2;
return $proizv;
?>
После выполнения исходного документа на экран будет выведено:
Вычисление произведения: Произведение равно 4
Перед началом работы с файлом следует получить о нем побольше информации. Для этого в PHP предусмотрено несколько полезных функций:
file_exists(“путь”) проверка существования файла: если файл найден – возвращается true, если не найден – false,
2. проверка атрибутов файла
is_readable(“путь”) открыт ли файл для чтения - (true – false),
is_writable(“путь”) открыт ли файл для записи - (true – false),
is_executable(“путь”) можно ли запустить файл на выполнение - (true – false),
filesize(“путь”) определение размера файла в байтах,
filectime(“путь”) дата создания файла – возвращает дату и время в формате timestamp,
fileatime(“путь”) дата последнего обращения к файлу (чтение или запись) – возвращает дату и время в формате timestamp,
filemtime(“путь”) дата последней модификации файла (запись или изменение хранящихся в нем данных) – возвращает дату и время в формате timestamp,
Описанные методики чтения и изменения данных в файлах будут прекрасно работать
в случае, когда сценарий запускает только один пользователь. Однако следует предполагать, что одним и тем же сценарием одновременно могут пользоваться несколько клиентов. В этом случае они могут одновременно обратиться к одному и тому же файлу для записи в него какой-то информации. Видимо, файл испортится.
Чтобы избежать такой проблемы, в PHP используется функция блокировки flock(). Она блокирует файл и тем самым предупреждает другие процессы о невозможности записи или чтения файла на время работы с ним текущего процесса:
flock($fp, блокировка)
$fp – дескриптор файла,
блокировка – одна из трех констант - типов блокировки:
LOCK_CH - разрешает другим процессам читать файл, но запрещает запись в него,
LOCK_EX - запрещает другим процессам чтение и запись в файл,
LOCK_UN - снимает все блокировки.
Функцию flock() следует вызывать сразу после выполнения функции fopen(), чтобы установить блокировку, а затем еще раз – перед закрытием файла, чтобы ее снять.