(PHP 4, PHP 5, PHP 7, PHP 8)
apache_note — 取得和設定 Apache 請求註記
此函式是 Apache 的 table_get 和 table_set 的包裝函式。它會編輯請求期間存在的註記表格。此表格的目的是允許 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");
?># Get Apache request object
my $r = Apache->request()->main();
# Get passed data
my $name = $r->notes('name');
# some processing
# Pass result back to PHP
$r->notes('resultdata', $result);
範例 #2 在 access.log 中記錄值
<?php
apache_note('sessionID', session_id());
?># "%{sessionID}n" can be used in the LogFormat directive