php/doc-ja

statically call の日本語訳

Closed this issue · 4 comments

static メソッドや static プロパティは、スコープ定義演算子で以下のようにアクセスする

<?php

class Test {
    public static int $prop = 1;
    public static function testMethod() : int { return 2; }
};

var_dump(Test::$prop);     //  1
var_dump(Test::testMethod());   //  2

上記の呼び方を statically call と呼んでいる箇所がかなりある。日本語版では「静的にコールする(呼び出す) 」と訳しているのだが、正直意味がわからない。静的にってどういうこと!? そのまま statically を置き換えただけである。

これについては、 (インスタンス化せずに)スコープ定義演算子を使ってアクセスする という意味なので、適切なタイミングで置き換える。

これと似たような static の置き換えに、static variable を「静的変数」と置き換えている箇所がある。これは #46 で扱う。

statically call の文脈

本件に該当する修正箇所。

reference/xmlreader/xmlreader/open.xml
60:   静的にコールされた場合には <classname>XMLReader</classname> を返します。
68:   このメソッドは、静的にコールすることが出来ます。
70:   静的にコールすると <constant>E_DEPRECATED</constant> が発生していました。

reference/xmlreader/xmlreader/xml.xml
60:   静的にコールされた場合には <classname>XMLReader</classname> を返します。
68:   このメソッドは、静的にコールすることが出来ます。
70:   静的にコールすると <constant>E_DEPRECATED</constant> が発生していました。

reference/dom/domdocument/loadhtml.xml
59:   静的にコールされた場合には <classname>DOMDocument</classname> を返します。

reference/dom/domdocument/loadhtmlfile.xml
56:   静的にコールされた場合には <classname>DOMDocument</classname> を返します。

reference/dom/domdocument/load.xml
59:   静的にコールされた場合には <classname>DOMDocument</classname> を返します。

reference/dom/domdocument/loadxml.xml
53:   静的にコールされた場合には <classname>DOMDocument</classname> を返します。
84:    <title><literal>loadXML</literal> の静的な起動</title>


language/oop5/paamayim-nekudotayim.xml
126:  <link linkend="language.oop5.basic.class.this">静的コールのトリックに関するサンプル</link> も参照ください。

language/oop5/static.xml
17:    <link linkend="language.oop5.late-static-bindings">遅延静的束縛</link>
27:  インスタンス化されたオブジェクトの内部からも静的にコールできます。
41:     static でないメソッドを静的にコールすると、<classname>Error</classname> がスローされます。
45:     static でないメソッドを静的にコールすることが非推奨になっており、

language/oop5/basic.xml
58:     static でないメソッドを 静的にコールすると、

language/oop5/late-static-bindings.xml
180:     といったキーワードを使用する静的コールは、コール元の情報を転送します。

features/commandline.xml
1467:   関数や定数、クラス名、変数名、静的なメソッドコール、そしてクラス定数を補完することができます。

Late Static Bindings の「転送コール」の文脈では、スコープ定義演算子 ( :: ) を使った呼び出し、とした。

こうすることで、「転送コール is 何」という謎は相変わらず残しつつ文脈を誤魔化すことに成功(*´~`)