PHP では、メソッド チェーンは、1 つのコード行で 1 つのオブジェクトに対して複数のメソッドを呼び出すことができる手法です。 。ただし、新しいオブジェクトをインスタンス化する場合、PHP の構文の制限のため、最初はメソッドを直接チェーンすることはできません。
PHP 5.4 ソリューション
PHP の導入により5.4 では、より便利なソリューションが導入されました。オブジェクトのインスタンス化を括弧で囲むことができます:
<code class="php">(new Foo())->xyz();</code>
PHP 5.4 より前
PHP 5.4 より前では、新しいメソッドを使用してオブジェクトのインスタンス化の直後にメソッドをチェーンすることはできませんでした。構文。代わりに、次の回避策の 1 つは、静的インスタンス化メソッドを作成することでした。
<code class="php">class Foo { // ... static public function instantiate() { return new self(); } } $a = Foo::instantiate()->xyz();</code>
結論
新しく作成されたオブジェクトのメソッド チェーンが、PHP 5.4 以降のバージョンにシームレスに統合されるようになりました。 。かっこ表記を使用すると、オブジェクトの初期化と変更を 1 行で行うための簡潔かつ直感的な方法が提供されます。
以上が新しく作成された PHP オブジェクトでメソッドを連鎖するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。