<?xml version="1.0" encoding="utf-8"?> <!-- $Revision$ --> <refentry xml:id="function.apache-note" xmlns="http://docbook.org/ns/docbook"> <refnamediv> <refname>apache_note</refname> <refpurpose>Get and set apache request notes</refpurpose> </refnamediv> <refsect1 role="description"> &reftitle.description; <methodsynopsis> <type>string</type><methodname>apache_note</methodname> <methodparam><type>string</type><parameter>note_name</parameter></methodparam> <methodparam choice="opt"><type>string</type><parameter>note_value</parameter><initializer>""</initializer></methodparam> </methodsynopsis> <para> This function is a wrapper for Apache's <literal>table_get</literal> and <literal>table_set</literal>. It edits the table of notes that exists during a request. The table's purpose is to allow Apache modules to communicate. </para> <para> The main use for <function>apache_note</function> is to pass information from one module to another within the same request. </para> </refsect1> <refsect1 role="parameters"> &reftitle.parameters; <para> <variablelist> <varlistentry> <term><parameter>note_name</parameter></term> <listitem> <para> The name of the note. </para> </listitem> </varlistentry> <varlistentry> <term><parameter>note_value</parameter></term> <listitem> <para> The value of the note. </para> </listitem> </varlistentry> </variablelist> </para> </refsect1> <refsect1 role="returnvalues"> &reftitle.returnvalues; <para> If called with one argument, it returns the current value of note <literal>note_name</literal>. If called with two arguments, it sets the value of note <literal>note_name</literal> to <literal>note_value</literal> and returns the previous value of note <literal>note_name</literal>. If the note cannot be retrieved, &false; is returned. </para> </refsect1> <refsect1 role="examples"> &reftitle.examples; <para> <example> <title>Passing information between PHP and Perl</title> <programlisting role="php"> <![CDATA[ <?php apache_note('name', 'Fredrik Ekengren'); // Call perl script virtual("/perl/some_script.pl"); $result = apache_note("resultdata"); ?> ]]> </programlisting> <programlisting role="perl"> <![CDATA[ # 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); ]]> </programlisting> </example> </para> <para> <example> <title>Logging values in access.log</title> <programlisting role="php"> <![CDATA[ <?php apache_note('sessionID', session_id()); ?> ]]> </programlisting> <programlisting role="apache"> <![CDATA[ # "%{sessionID}n" can be used in the LogFormat directive ]]> </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 -->