File: apc-define-constants.xml

package info (click to toggle)
php-doc 20081024-1
  • links: PTS
  • area: main
  • in suites: lenny
  • size: 57,752 kB
  • ctags: 3,858
  • sloc: xml: 686,554; php: 19,446; perl: 610; cpp: 500; makefile: 336; sh: 114; awk: 28
file content (151 lines) | stat: -rw-r--r-- 4,305 bytes parent folder | download
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
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.5 $ -->
<refentry xml:id="function.apc-define-constants" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
 <refnamediv>
  <refname>apc_define_constants</refname>
  <refpurpose>
   Defines a set of constants for retrieval and mass-definition 
  </refpurpose>
 </refnamediv>
 <refsect1 role="description">
  &reftitle.description;
  <methodsynopsis>
   <type>bool</type><methodname>apc_define_constants</methodname>
   <methodparam><type>string</type><parameter>key</parameter></methodparam>
   <methodparam><type>array</type><parameter>constants</parameter></methodparam>
   <methodparam choice="opt"><type>bool</type><parameter>case_sensitive</parameter></methodparam>
  </methodsynopsis>

  <para>
   <function>define</function> is notoriously slow. Since the main benefit of
   APC is to increase the performance of scripts/applications, this mechanism
   is provided to streamline the process of mass constant definition. However,
   this function does not perform as well as anticipated.
  </para>

  <para>
   For a better-performing solution, try the
   <link xlink:href="&url.pecl.package;hidef">hidef</link> extension from PECL.
  </para>

  <note>
   <simpara>
    To remove a set of stored constants (without clearing the entire cache), an
    empty array may be passed as the <parameter>constants</parameter>
    parameter, effectively clearing the stored value(s).
   </simpara>
  </note>
 </refsect1>

 <refsect1 role="parameters">
  &reftitle.parameters;
  <para>
   <variablelist>
    <varlistentry>
     <term><parameter>key</parameter></term>
     <listitem>
      <para>
       The <parameter>key</parameter> serves as the name of the constant set
       being stored. This <parameter>key</parameter> is used to retrieve the
       stored constants in <function>apc_load_constants</function>.
      </para>
     </listitem>
    </varlistentry>
    <varlistentry>
     <term><parameter>constants</parameter></term>
     <listitem>
      <para>
       An associative array of <literal>constant_name => value</literal>
       pairs. The <literal>constant_name</literal> must follow the normal
       <link linkend="language.constants">constant</link> naming rules.
       <literal>value</literal> must evaluate to a scalar value.
      </para>
     </listitem>
    </varlistentry>
    <varlistentry>
     <term><parameter>case_sensitive</parameter></term>
     <listitem>
      <para>
       The default behaviour for constants is to be declared case-sensitive;
       i.e. <literal>CONSTANT</literal> and <literal>Constant</literal>
       represent different values. If this parameter evaluates to &false; the
       constants will be declared as case-insensitive symbols.
      </para>
     </listitem>
    </varlistentry>
   </variablelist>
  </para>
 </refsect1>
 <refsect1 role="returnvalues">
  &reftitle.returnvalues;
  <para>
   &return.success;
  </para>
 </refsect1>


 <refsect1 role="examples">
  &reftitle.examples;
  <para>
   <example>
    <title><function>apc_define_constants</function> example</title>
    <programlisting role="php">
<![CDATA[
<?php
$constants = array(
    'ONE'   => 1,
    'TWO'   => 2,
    'THREE' => 3,
);
apc_define_constants('numbers', $constants);
echo ONE, TWO, THREE;
?>
]]>
    </programlisting>
    &example.outputs;
    <screen>
<![CDATA[
123
]]>
    </screen>
   </example>
  </para>
 </refsect1>


 <refsect1 role="seealso">
  &reftitle.seealso;
  <para>
   <simplelist>
    <member><function>apc_load_constants</function></member>
    <member><function>define</function></member>
    <member><function>constant</function></member>
    <member>
     Or <link linkend="language.constants">the PHP constants reference</link>
    </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:"../../../../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
-->