File: constants.xml

package info (click to toggle)
phpdoc 20020310-1
  • links: PTS
  • area: main
  • in suites: woody
  • size: 35,272 kB
  • ctags: 354
  • sloc: xml: 799,767; php: 1,395; cpp: 500; makefile: 200; sh: 140; awk: 51
file content (282 lines) | stat: -rw-r--r-- 9,052 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
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
<?xml version="1.0" encoding="utf-8"?>
 <chapter id="language.constants">
  <title>定数</title>

  <simpara>
   定数は簡単な値のためのID(名前)です。この名前が示すように、定数の値
   はスクリプト実行中に変更できません。(特別な定数
   <constant>__FILE__</constant> および
   <constant>__LINE__</constant> は例外です。)
   デフォルトで定数では大文字小文字を区別します。慣習的に定数は常に大
   文字で表記されます。
  </simpara>
  <para>
   定数の名前は、PHPのラベルと同じ規則に従います。有効な定数の名前は、
   文字またはアンダースコアで始まり、任意の数の文字、数字、アンダース
   コアが後に続きます。正規表現で示すと、次のようになります。
   <literal>[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*</literal>

   <!-- TODO: Example of valid & invalid constant names -->
  </para>
				      
  <note>
   <simpara>
    本節の目的においては、文字は a-z, A-Z, および127から255まで
    (0x7f-0xff)のASCII文字を指します。
   </simpara>
  </note>
  <simpara>
   定数のスコープはグローバルです。
  </simpara>
  <sect1 id="language.constants.syntax">
   <title>構文</title>
   <simpara>
    <function>define</function>関数を使用することにより、定数を定義す
    ることが可能です。定数が一度定義されると、変更または未定義とするこ
    とはできません。
   </simpara>
   <simpara>
    スカラーデータ(<type>boolean</type>, <type>integer</type>, 
    <type>double</type>, <type>string</type>) のみが定数の中に含むこと
    が可能です。
   </simpara>
   <simpara>
    単に定数の名前を指定することにより、その値を得ることが可能です。
    変数とは異なり、その前に<literal>$</literal>は不要です。
    定数の名前を動的に得る必要がある場合、定数の値を読むために関数
    <function>constant</function>を使用することも可能です。
    定義済の定数の一覧を得るには、
    <function>get_defined_constants</function>を使用して下さい。
   </simpara>
   <note>
    <simpara>
     定数と(グローバル)変数は、異なる名前空間にあります。
     例えば、&true; と <varname>$TRUE</varname> は違うものを意味します。
    </simpara>
   </note>
   <simpara>
    未定義の定数を使用した場合、PHPはその定数自体の名前を使用したと仮
    定します。この際、<link
    linkend="features.error-handling">notice</link> が発生します。
    ある定数が設定されているかどうかを知るには、
    <function>defined</function>巻数を使用して下さい。
   </simpara>
   <para>
    変数との違いは次のようになります。
    <itemizedlist>
     <listitem>
      <simpara>
       定数は、前にドル記号(<literal>$</literal>)を要しません。
      </simpara>
     </listitem>
     <listitem>
      <simpara>
       定数は、定義することができ、変数のスコープ規則に関係なく、あら
       ゆる場所からアクセス可能です。
      </simpara>
     </listitem>
     <listitem>
      <simpara>
       定数は一度設定されると再定義または未定義とすることはできません。
      </simpara>
     </listitem>
     <listitem>
      <simpara>
       定数は、スカラー値としてのみ評価可能です。
      </simpara>
     </listitem>
    </itemizedlist>
   </para>
    
   <para>
    <example>
     <title>定数の定義</title>
     <programlisting>
<![CDATA[
<?php
define("CONSTANT", "Hello world.");
echo CONSTANT; // "Hello world."を出力
echo Constant; // outputs "Constant" および通知を発生。
?>
]]>
     </programlisting>
    </example>

   </para>
   
  </sect1>
  
  <sect1 id="language.constants.predefined">
   <title>定義済の定数</title>
   <para>
    あらかじめ定義された定数(常に使用可能)を以下に示します。
    
    <variablelist>
     
     <varlistentry>
      <term>__FILE__ (大文字小文字区別せず)</term>
      <listitem>
       <simpara>
	現在処理中のスクリプトファイルの名前。includeまたはrequireによ
	り読みこまれたファイルで使用された場合、親ファイルの名前ではな
	く読みこまれたファイルの名前となります。
       </simpara>
      </listitem>
     </varlistentry>
     
     <varlistentry>
      <term>__LINE__  (大文字小文字区別せず)</term>
      <listitem>
       <simpara>
	カレントのスクリプトファイルでパース中の行の番号。includeまた
	はrequireされたファイルで使用された場合、includeされたファイル
	の中での位置となります。
       </simpara>
      </listitem>
     </varlistentry>
     
     <varlistentry>
      <term>PHP_VERSION</term>
      <listitem>
       <simpara>
	現在使用中のPHPパーサのバージョンを表す文字列。
	例:'4.1.0'
       </simpara>
      </listitem>
     </varlistentry>
     
     <varlistentry>
      <term>PHP_OS</term>
      <listitem>
       <simpara>
	PHPパーサを実行中のオペレーティングシステムの名前。
	値として考えられるものは次のようになります。
	"AIX", "Darwin" (MacOS), "Linux", "SunOS", "WIN32", "WINNT"
	注意: 他の値もあり得ます。
       </simpara>
      </listitem>
     </varlistentry>
     
     <varlistentry>
      <term>&true; (大文字小文字区別せず)</term>
      <listitem>
       <simpara>
	真値 (<type>boolean</type> 型参照)。
       </simpara>
      </listitem>
     </varlistentry>
     
     <varlistentry>
      <term>&false; (大文字小文字区別せず)</term>
      <listitem>
       <simpara>
	偽値 (<type>boolean</type> 型参照)。
       </simpara>
      </listitem>
     </varlistentry>
     
     <varlistentry>
      <term>&null;  (大文字小文字区別せず)</term>
      <listitem>
       <simpara>
	&null; 値 (<type>null</type> 型参照)
       </simpara>
      </listitem>
     </varlistentry>

     <varlistentry>
      <term>E_ERROR</term>
      <listitem>
       <simpara>
	構文エラー以外の回復不能なエラーを定義します。
       </simpara>
      </listitem>
     </varlistentry>
     
     <varlistentry>
      <term>E_WARNING</term>
      <listitem>
       <simpara>
	何か誤りがあるが、それでも実行を継続する条件を定義します。
	スクリプト自体によりエラー処理を行うことが可能です。
	例えば<function>ereg</function>における正規表現が不正であった
	場合に発生します。
       </simpara>
      </listitem>
     </varlistentry>
     
     <varlistentry>
      <term>E_PARSE</term>
      <listitem>
       <simpara>
	スクリプトファイルの不正な構文によりパーサの処理が中断した
	状態です。回復は不可能です。
       </simpara>
      </listitem>
     </varlistentry>
     
     <varlistentry>
      <term>E_NOTICE</term>
      <listitem>
       <simpara>
	エラーであるかにかかわらず何かが起きました。実行は継続されます。
	例えば、引用符で括られていない文字列をハッシュインデックスとして
	使用した場合や設定されていない変数にアクセスした場合。
       </simpara>
      </listitem>
     </varlistentry>
     
     <varlistentry>
      <term>E_ALL</term>
      <listitem>
       <simpara>
	全ての定数E_*が含まれます。
	<function>error_reporting</function>で使用された場合、
	PHPにより通知された全種類の全ての問題がリポートされます。
       </simpara>
      </listitem>
     </varlistentry>
    </variablelist>
   </para>

   <para>
    <literal>E_*</literal>定数は、エラーレポートレベルを設定するために通常
    <function>error_reporting</function> 関数と共に使用されます。
    これら全ての定数については、
    <link linkend="features.error-handling">エラー処理</link>を参照下さい。
    
    <example>
     <title>__FILE__ および __LINE__ の使用</title>
     <programlisting>
<![CDATA[
<?php
function report_error($file, $line, $message) {
    echo "An error occured in $file on line $line: $message.";
}

report_error(__FILE__,__LINE__, "Something went wrong!");
?>
]]>
     </programlisting>
    </example>
   </para>
  </sect1>
 </chapter>
 
 <!-- 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:
 -->