->
PHPにあるこの矢印のような演算子を何と呼びますか?
マイナス記号、ダッシュ、またはハイフンの後に大なり記号(または右山形)が続きます。
コードを大声で読むときに、どのように発音しますか?
->
PHPにあるこの矢印のような演算子を何と呼びますか?
マイナス記号、ダッシュ、またはハイフンの後に大なり記号(または右山形)が続きます。
コードを大声で読むときに、どのように発音しますか?
回答:
正式名称は「オブジェクト演算子」-T_OBJECT_OPERATORです。それを「矢印」と呼びます。
T_DOUBLE_COLON
ます。投票数が増えると、+ 1します:)
$a->do()
「Aのメソッドドゥ」で、$a->thing
それは相対的だ、「Aのプロパティシング」です。
T_PAAMAYIM_NEKUDOTAYIM
ヘブライ語では「ダブルコロン」を正確に意味します。
私はそれを「ダーツ」と呼びます。のように$Foo->bar()
: "フーダーツバー"
多くの言語は "ドット"を使用しているので、Foo.bar();
私は1音節の単語を使用したかったのです。「矢印」は長すぎる!;)
PHPは.
連結に「ドット」を使用するため(なぜですか?)「ドット」と安全に言うことはできません-混乱する可能性があります。
しばらく前に同僚と話し合ったとき、「ダーツ」は「ドット」と同じくらい快適に流れるように似ているが、少なくとも「ドット」と間違わないように十分に区別できる単語として決定しました。 。
PHPコードを読み上げるとき、「->」演算子を発音しません。以下のために$db->prepare($query);
、私はほとんどが言う「DB [短い休止]をクエリを準備します。」だから、私は通常の文章ではコンマのようにそれを話すと思います。
Paamayim Nekudotayim( "::")についても同様です。
プロパティ演算子。
読ん$a->b()
だり$a->b
大声で言ったりするときは、「$ a objでbを呼び出す」または「$ aから/の/でbを取得」と言うだけです。
単一の矢印は、PHP OOP:メンバーにとって意味するものとして、口頭で簡単に参照できます。つまり、$a->var
「オブジェクトaのメンバー変数」と言うことになります。
コードを声に出して読むときは、先読み(先読み参照、申し訳ありません)、実際に何を参照しているのかを知っていると役立ちます。たとえば、次のコードを見てみましょう。
<?php
Class MyClass {
$foo = 0;
public function bar() {
return $this->foo;
}
}
$myobject = new MyClass();
$myobject->bar();
?>
したがって、このコードブロックをコードのデモンストレーションとして読み上げると、次のようになります。
"クラス 'MyClass'の定義、open-brace。変数 'foo'はゼロに等しい、行を終了します。パブリック関数 'bar'の開閉括弧、open-braceを定義します。オブジェクト 'this'のメンバー変数 'foo'を返し、行を終了します。Close-brace、close-brace。「MyClass」の新しいインスタンス(引数なし)を変数オブジェクト「myobject」としてインスタンス化し、行を終了します。オブジェクト「myobject」のメンバーメソッド「bar」を呼び出し、行を終了します。
ただし、他の学生やプログラマーがビジュアルなしでコピーできるようにコードを読み上げている場合は、次のように言います。
"PHPオープンタグ(フル)、改行、インデント、クラスMyClass open-brace、newline。インデント、['dollar-sign' | 'Object-marker'] fooは0、セミコロン、改行、改行に等しい。パブリック関数バーオープン-閉じ括弧、開き括弧、改行。インデント、戻り値['dollar-sign' | 'Object-marker'] this arrow foo、semicolon、newline。reverse-indent、close-brace、newline、reverse-indent、close-brace 、newline、newline。['dollar-sign' | 'Object-marker'] myobject equals new MyClass open-close括弧、セミコロン、改行。['dollar-sign' | 'Object-marker'] myobject arrow bar open-close括弧、セミコロン、改行。逆インデント、PHP終了タグ。」
あなたが見るところ['ドル記号' | 'Object-marker']、 '$'について話す傾向のある方を選択するだけです。私は2つを頻繁に切り替えます。聴衆によって異なります。
つまり、PHPでは、変数、別のオブジェクト、またはメソッドのいずれであっても、->はオブジェクトのメンバーを指します。
これには日本語には「いいえ」(の)という便利な助詞があります。所有格であり、大まかに「前項に関連する」という意味です。
「フレッドのアナグマ」とは「フレッドのアナグマ」を意味します。
これは、少なくとも精神的に、そして日本語を理解している人々の間では、次のように読んで差別化する傾向があるという長い道のりです。
$A->B(); // "Call $A's B."
C::D(); // "Call C の D."
しかし、日本語を話さない人にとっては、両方を所有格として読むこともできます。また、それらを反転して「of」、つまり「D of C」を使用することもできます...しかし、それは少し厄介であり、線形フローを壊すため、迅速に読み取ることは困難です。
しかし、私が口述していた場合、おそらくペアコーディングやタイプを提案するとき、特定の文字を「ダッシュより大の矢印」と「ダブルコロン」と呼びます(話している人がわかっている場合) toはPHPの愛好家で、「paamayim nekudotayim double-colon」と初めて呼ぶかもしれませんが、これは冗談であり、一部には、私を「修正」できないようにするためです)。
->
オブジェクト指向モードでPHPに使用されるプロパティ演算子です。
user187291は主観的ではない質問については主観的でない質問に答えました。たとえば、私は$x->y
"x sub y" と発音します-この文脈での "sub"は "subscript"の略です。これは配列表記に適しています。$x['y']
「x sub y」とも発音します。通常、コードを大声で読むときは、他の開発者が見ることができる行を識別するために自分の言葉を使用しているため、あいまいさはまだ問題になりません。原因は、構造体/オブジェクトと配列を「コレクション」と見なし、その要素に数学的表記のように添え字が付けられているためだと思います。