-
Notifications
You must be signed in to change notification settings - Fork 79
/
Copy pathapache-note.xml
172 lines (157 loc) · 4.4 KB
/
apache-note.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: a331ac8a86bb5929b79be9a369fac1e3af516241 Maintainer: hirokawa Status: ready -->
<!-- Credits: mumumu -->
<refentry xml:id="function.apache-note" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>apache_note</refname>
<refpurpose>Apacheリクエスト記号(note)を取得/設定する</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type class="union"><type>string</type><type>false</type></type><methodname>apache_note</methodname>
<methodparam><type>string</type><parameter>note_name</parameter></methodparam>
<methodparam choice="opt"><type class="union"><type>string</type><type>null</type></type><parameter>note_value</parameter><initializer>&null;</initializer></methodparam>
</methodsynopsis>
<para>
この関数は、Apache の <literal>table_get</literal> および
<literal>table_set</literal> のラッパーです。
リクエスト中に存在する note のテーブルを編集します。
このテーブルは、Apache モジュール間の通信に用いるものです。
</para>
<para>
<function>apache_note</function> の主な使用法は、
同一リクエスト内でのモジュール間の情報のやりとりです。
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>note_name</parameter></term>
<listitem>
<para>
記号の名前
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>note_value</parameter></term>
<listitem>
<para>
記号の値
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
<parameter>note_value</parameter> が省略されるか、&null; の場合、
<literal>note_name</literal> の現在の値が返されます。
そうでない場合、記号<literal>note_name</literal>
の値を<literal>note_value</literal>にセットし、前の記号
<literal>note_name</literal>の値を返します。
もし記号が処理できない場合、&false; が返されます。
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>8.0.0</entry>
<entry>
<parameter>note_value</parameter> は、nullable になりました。
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>PHP と Perl との間での情報のやりとり</title>
<programlisting role="php">
<![CDATA[
<?php
apache_note('name', 'Fredrik Ekengren');
// perl スクリプトをコールします
virtual("/perl/some_script.pl");
$result = apache_note("resultdata");
?>
]]>
</programlisting>
<programlisting role="perl">
<![CDATA[
# Apache リクエストオブジェクトを取得します
my $r = Apache->request()->main();
# 受け取ったデータを取得します
my $name = $r->notes('name');
# 何らかの処理をします
# 結果を PHP 側に戻します
$r->notes('resultdata', $result);
]]>
</programlisting>
</example>
</para>
<para>
<example>
<title>access.log への出力</title>
<programlisting role="php">
<![CDATA[
<?php
apache_note('sessionID', session_id());
?>
]]>
</programlisting>
<programlisting role="apache">
<![CDATA[
# "%{sessionID}n" を LogFormat ディレクティブで使用できます
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>virtual</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->