apache_note() does not work on requests to a symlink, only on actual files. Eg. if index.php is symlinked to login.php, then any apache_note() in login.php will not be available to other apache modules such as logging.
(PHP 4, PHP 5, PHP 7, PHP 8)
apache_note — Возвращает и устанавливает уведомления к запросу Apache
Эта функция является обёрткой для table_get
и
table_set
. С её помощью можно редактировать таблицу уведомлений
(apache notes table), которая создаётся во время передачи запроса.
Таблица уведомлений позволяет модулям Apache обмениваться данными.
Основное назначение apache_note() - передавать информацию из одного модуля в другой внутри одного запроса.
note_name
Название уведомления.
note_value
Значение уведомления.
Если note_value
опущен или null
, функция возвращает текущее значение
уведомления note_name
. В противном случае,
она устанавливает значение уведомления
note_name
в note_value
и возвращает предыдущее значение note_name
.
Если значение уведомления не может быть получено, будет возвращено false
.
Версия | Описание |
---|---|
8.0.0 |
note_value теперь допускает значение null.
|
Пример #1 Пример передачи информации между PHP и Perl
<?php
apache_note('name', 'Fredrik Ekengren');
// Вызов perl-скрипта
virtual("/perl/some_script.pl");
$result = apache_note("resultdata");
?>
# Получаем объект запроса Apache my $r = Apache->request()->main(); # Получаем переданные данные my $name = $r->notes('name'); # Некоторые действия с данными # Передача результата назад в PHP $r->notes('resultdata', $result);
Пример #2 Пример записи значений в access.log
<?php
apache_note('sessionID', session_id());
?>
# "%{sessionID}n" может быть использован в директиве LogFormat
apache_note() does not work on requests to a symlink, only on actual files. Eg. if index.php is symlinked to login.php, then any apache_note() in login.php will not be available to other apache modules such as logging.