cvs: phpdoc-ja /language constants.xml expressions.xml oop.xml

From: Date: Fri, 27 Jan 2006 03:46:33 +0000
Subject: cvs: phpdoc-ja /language constants.xml expressions.xml oop.xml
Groups: php.doc.ja 
Request: Send a blank email to doc-ja+get-1447@lists.php.net to get a copy of this message
takagi Fri Jan 27 03:46:33 2006 UTC Modified files: /phpdoc-ja/language oop.xml expressions.xml constants.xml Log: fixed missing <?php ?> tags in example (thanks kuroki-san). fixed typo (thanks kuroki-san).

http://cvs.php.net/viewcvs.cgi/phpdoc-ja/language/oop.xml?r1=1.26&r2=1.27&diff_format=u Index: phpdoc-ja/language/oop.xml diff -u phpdoc-ja/language/oop.xml:1.26 phpdoc-ja/language/oop.xml:1.27 --- phpdoc-ja/language/oop.xml:1.26 Thu Jan 26 03:42:42 2006 +++ phpdoc-ja/language/oop.xml Fri Jan 27 03:46:33 2006 @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> -<!-- $Revision: 1.26 $ --> +<!-- $Revision: 1.27 $ --> <!-- EN-Revision: 1.64 Maintainer: hirokawa Status: ready --> <!-- CREDITS: takagi --> @@ -458,6 +458,7 @@ <informalexample> <programlisting role="php"> <![CDATA[ +<?php class A { function A() @@ -478,6 +479,7 @@ // これにより、B() がコンストラクタとしてコールされます。 $b = new B; +?> ]]> </programlisting> </informalexample> @@ -517,14 +519,15 @@ </caution> <para> - 基底クラスの関数や変数を参照したり、まだ特定のインスタンスを持たな - いクラスの関数を参照したりできると便利であるような場合があります。 + 基底クラスの関数や変数を参照したり、まだ特定のインスタンスを持たない + クラスの関数を参照したりできると便利であるような場合があります。 演算子 :: はこのような場合に使用されます。 </para> <informalexample> <programlisting role="php"> <![CDATA[ +<?php class A { function example() @@ -554,6 +557,7 @@ // 再定義された関数B::example().<br> // オリジナルの関数A::example().<br> $b->example(); +?> ]]> </programlisting> </informalexample> @@ -605,13 +609,14 @@ クラスの<literal>extends</literal>宣言で指定された基底クラスの名前 を指しています。これにより、基底クラスの名前を複数の場所で使用する ことを避けることが可能です。実装の際に継承ツリーを変更した場合でも、 - 変更は簡単で、クラスの<literal>extends</literal>宣言を変更するだけ - ですみます。 + 変更は簡単で、クラスの <literal>extends</literal> + 宣言を変更するだけですみます。 </para> <informalexample> <programlisting role="php"> <![CDATA[ +<?php class A { function example() @@ -633,6 +638,7 @@ // B::example()をコールし、この関数の中からA::example()がコールされます。 $b->example(); +?> ]]> </programlisting> </informalexample> @@ -785,12 +791,13 @@ <title>コンストラクタの内部での参照</title> <para> コンストラクタの中で参照を作成すると結果が混乱する可能性があります。 - 本節ではチュートリアル形式で説明しますが、この問題を避けるために役 - 立つはずです。 + 本節ではチュートリアル形式で説明しますが、 + この問題を避けるために役立つはずです。 <informalexample> <programlisting role="php"> <![CDATA[ +<?php class Foo { function Foo($name) @@ -814,6 +821,7 @@ $this->Name = $name; } } +?> ]]> </programlisting> </informalexample> @@ -822,12 +830,13 @@ <para> コピー演算子 <literal>=</literal> により作成された <varname>$bar1</varname> と 参照演算子 <literal>=&amp;</literal> - により作成された <varname>$bar2</varname> の間の差異があるかどうか - を確認してみましょう。 + により作成された <varname>$bar2</varname> の間の差異があるかどうかを + 確認してみましょう。 <informalexample> <programlisting role="php"> <![CDATA[ +<?php $bar1 = new foo('set in constructor'); $bar1->echoName(); $globalref[0]->echoName(); @@ -845,25 +854,25 @@ set in constructor set in constructor set in constructor */ +?> ]]> </programlisting> </informalexample> </para> <para> - 明らかに違いはありませんが、実際には動作は非常に異なっています。つ - まり、<varname>$bar1</varname> と <varname>$globalref[0]</varname> - は、 参照されておらず、同じ変数でもありません。 - これは、"new" がデフォルトで参照を返さず、代わりにコピーを返すため - です。 + 明らかに違いはありませんが、実際には動作は非常に異なっています。つまり、 + <varname>$bar1</varname> と <varname>$globalref[0]</varname> + は参照されておらず、同じ変数でもありません。 + これは、"new" がデフォルトで参照を返さず、代わりにコピーを返すためです。 <note> <simpara> - (PHP 4以降ではリファレンスカウンティングを使用しているため、)参 - 照ではなくコピーを返すことで性能が低下することはありません。逆に - 多くの場合、参照を使うよりも単純にコピーを使った方が良い結果とな - ります。これは、参照の作成には時間がかかりますが、コピーの作成に - は理想的には時間が全くかからないからです。(ただし、大きな配列ま - たはオブジェクトでその一つが変更されると、次々に参照先の他の要素 - に参照先に波及するといった場合を除きます) + (PHP 4 以降ではリファレンスカウンティングを使用しているため)、 + 参照ではなくコピーを返すことで性能が低下することはありません。逆に + 多くの場合、参照を使うよりも単純にコピーを使った方が良い結果となります。 + これは、参照の作成には時間がかかりますが、コピーの作成には + 理想的には時間が全くかからないからです (ただし、大きな配列 + またはオブジェクトでその一つが変更されると、次々に参照先の他の要素に + 参照先に波及するといった場合を除きます)。 </simpara> </note> 上記の記述が正しいことを示すために以下のコードを見てみましょう。 @@ -871,6 +880,7 @@ <informalexample> <programlisting role="php"> <![CDATA[ +<?php // ここで、name を変更してみます。どうなるでしょうか? // $bar と $globalref[0] の両方共名前が変わると予想するかもしれません... $bar1->setName('set from outside'); @@ -894,6 +904,7 @@ /* 出力: set from outside set from outside */ +?> ]]> </programlisting> </informalexample> http://cvs.php.net/viewcvs.cgi/phpdoc-ja/language/expressions.xml?r1=1.13&r2=1.14&diff_format=u Index: phpdoc-ja/language/expressions.xml diff -u phpdoc-ja/language/expressions.xml:1.13 phpdoc-ja/language/expressions.xml:1.14 --- phpdoc-ja/language/expressions.xml:1.13 Sun Jul 31 00:57:08 2005 +++ phpdoc-ja/language/expressions.xml Fri Jan 27 03:46:33 2006 @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> -<!-- $Revision: 1.13 $ --> +<!-- $Revision: 1.14 $ --> <!-- EN-Revision: 1.30 Maintainer: hirokawa Status: ready --> <!-- CREDITS: takagi --> <chapter id="language.expressions"> @@ -21,15 +21,15 @@ </simpara> <simpara> - この代入の後、$a の値は、5 であることが予想されます。 + この代入の後、$a の値は、5 であることが期待されます。 よって、$b = $a と書いた場合、$b = 5 と書いたのと - 同じように動作することが予想されます。 + 同じように動作することが期待されます。 言い換えると $a は 5 という値を持つ式なのです。 全てが正しく動作する場合、何が起こるかをこのことが正確に表現しています。 </simpara> <para> - 少しだけより複雑な式の例は、関数です。 + 式をもう少し複雑にしたのが関数です。 例えば、次の関数を考えてみましょう。 <informalexample> @@ -137,7 +137,7 @@ でしょう? '$a++' を複数回使うこともできますが、当然これはあまり効率的で快適な 手法ではありません。 - 多くの場合は、'$a = $a + 3' と書かかれます。 + 多くの場合は、'$a = $a + 3' と書かれます。 '$a + 3' は、$a + 3 の値を評価し、$a に代入します。 この結果、$a に 3 が加えられます。 @@ -186,10 +186,10 @@ function double($i) { return $i*2; } -$b = $a = 5; /* 値 5 を %a と $b に代入します */ +$b = $a = 5; /* 値 5 を $a と $b に代入します */ $c = $a++; /* 後置加算なので、$c に代入される値は、$a の 元の値 (5) です */ -$e = $d = ++$b; /* 前置加算なので、$d と 4e に代入される値は、 +$e = $d = ++$b; /* 前置加算なので、$d と $e に代入される値は、 加算後の $b の値 (6) です */ /* ここままで、$d と $e は、6 です */ @@ -198,8 +198,9 @@ つまり 2*6 = 12 が、代入されます。 $g = double(++$e); /* $g には、$e が加算された後の値を2倍した値、 つまり 2*7 = 14 が、代入されます。 -$h = $g += 10; /* まず、$g に 10 が加算され、24 になります。代入値 (24) は、 - $h に代入されます。そして、$a も同様に 24 になります。 */ +$h = $g += 10; /* まず、$g に 10 が加算され、24 になります。 + 代入値 (24) は、$h に代入されます。 + そして、$h も同様に 24 になります。 */ ?> ]]> </programlisting> http://cvs.php.net/viewcvs.cgi/phpdoc-ja/language/constants.xml?r1=1.22&r2=1.23&diff_format=u Index: phpdoc-ja/language/constants.xml diff -u phpdoc-ja/language/constants.xml:1.22 phpdoc-ja/language/constants.xml:1.23 --- phpdoc-ja/language/constants.xml:1.22 Fri Nov 18 23:06:21 2005 +++ phpdoc-ja/language/constants.xml Fri Jan 27 03:46:33 2006 @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> -<!-- $Revision: 1.22 $ --> +<!-- $Revision: 1.23 $ --> <!-- EN-Revision: 1.42 Maintainer: hirokawa Status: ready --> <!-- CREDITS: takagi --> @@ -7,17 +7,17 @@ <title>定数</title> <simpara> - 定数は簡単な値のためのID(名前)です。この名前が示すように、定数の値 - はスクリプト実行中に変更できません。(<link + 定数は簡単な値のためのID(名前)です。この名前が示すように、定数の値は + スクリプト実行中に変更できません (<link linkend="language.constants.predefined">magic constants</link>は - 例外で、これらは実際は定数ではありません。) - デフォルトで定数では大文字小文字を区別します。慣習的に定数は常に大 - 文字で表記されます。 + 例外で、これらは実際は定数ではありません)。 + デフォルトで定数では大文字小文字を区別します。慣習的に、 + 定数は常に大文字で表記されます。 </simpara> <para> - 定数の名前は、PHPのラベルと同じ規則に従います。有効な定数の名前は、 - 文字またはアンダースコアで始まり、任意の数の文字、数字、アンダース - コアが後に続きます。正規表現で示すと、次のようになります。 + 定数の名前は、PHP のラベルと同じ規則に従います。有効な定数の名前は、 + 文字またはアンダースコアで始まり、任意の数の文字、数字、 + アンダースコアが後に続きます。正規表現で示すと次のようになります。 <literal>[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*</literal> </para> <para> @@ -36,7 +36,7 @@ define("2FOO", "something"); // 有効だが、避けるべき。 -// PHP が、今後、自動的に定義される定数を追加すると、 +// 将来 PHP に定数の予約語が追加された場合に // スクリプトが動作しなくなる可能性がある define("__FOO__", "something"); @@ -140,7 +140,7 @@ <?php define("CONSTANT", "Hello world."); echo CONSTANT; // "Hello world."を出力 -echo Constant; // outputs "Constant" および通知を発生。 +echo Constant; // "Constant" を出力し、警告 (notice) を発行 ?> ]]> </programlisting> @@ -160,9 +160,9 @@ PHPには実行されるスクリプトで使用可能な多くの <link linkend="reserved.constants">定義済みの定数</link>があります。 - しかし、これらの定数の多くは、種々の拡張モジュールにより作成さ - れ、動的なロードやコンパイル時の組込みにより、これらの拡張モジュー - ルが使用可能である場合にのみ定義されます。 + しかし、これらの定数の多くは、種々の拡張モジュールにより作成され、 + 動的なロードやコンパイル時の組込みにより、これらの拡張モジュールが + 使用可能である場合にのみ定義されます。 </simpara> <para>
« previous php.doc.ja (#1447) next »