apache_note

(PHP 4, PHP 5, PHP 7, PHP 8)

apache_noteВозвращает и устанавливает уведомления к запросу Apache

Описание

apache_note(string $note_name, ?string $note_value = null): string|false

Эта функция является обёрткой для 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

Смотрите также

  • virtual() - Выполняет подзапрос Apache

add a note add a note

User Contributed Notes 1 note

up
0
ckm at NOSPAM dot crust dot net
23 years ago
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.
To Top