0

重複の可能性:
PHPメソッドチェーン?

私が使用した多くのAPIで、この種のことを見てきました。

$object->method()->anotherMethod();

私が読んだOOPのチュートリアルから、これがクラスの記述方法です。

<?php
class myClass {
    public method() {
       // do something
    }
}
?>

これはいつ使用する必要があり、どのように実行できますか?申し訳ありませんが、私はOOPを初めて使用します。

4

2 に答える 2

4

メソッドが$thisを返す場合、上記のスタイル()を使用できます$object->method()->anotherMethod()。これは、メソッドが他の何かを返すことが期待されていない場合にのみ実行できます。たとえば、likeという名前のメソッドは戻ることgetSomething()が期待されSomethingますが、返す値がないメソッドがある場合は、$thisを返すだけで次のことができます。メソッド呼び出しチェーン。

于 2012-05-27T12:51:10.410 に答える
3

これは、メソッド呼び出しチェーンと呼ばれます。いつ使用するかについての厳格なルールはありませんが、私が使用する一般的なルールは、初期化関数など、次々に頻繁に呼び出される一連のオブジェクトメソッドがある場合にメソッドチェーンが意味をなすというものです。

于 2012-05-27T12:52:14.560 に答える