この記事の例では、PHP オブジェクト チェーン操作の実装原理を説明します。参考のために皆さんと共有してください。詳細は次のとおりです:
チェーン操作とは何ですか? jQuery では、よく次のような DOM 要素を操作します。動作は非常にクールで、コードを読むのに非常に便利です。では、これを PHP で実装できるでしょうか。答えは「はい」です。もちろん、OOP で使用する必要があります。手続き型プログラムでは、このメソッドを使用する必要はありません。
PHP では、多くの関数をよく使用します:
$("p").css("color").addClass("selected");
上記のコードの機能は、文字列の両側のスペースを削除し、その長さを出力することです。次に、チェーン プログラミングを使用して、次のように実行します。 :
$str = 'abs123 '; echo strlen(trim($str));
これは主に PHP オブジェクト指向の __call() と __toString() マジック メソッドを使用します
$str = 'abs123 '; echo $str->trim()->strlen();
上記のコードからわかるように、呼び出し時 オブジェクトにメソッドが存在しない場合、__call() マジック メソッドが自動的にトリガーされ、call_user_func() と組み合わせてチェーン操作が実行されます。オブジェクトが出力されると、toString() がトリガーされて目的の結果が出力されます。もちろん、別の解決策もあります。カスタム メソッドで return this を使用するだけで、オブジェクト チェーン操作を実装することもできます。この記事が PHP プログラミングの皆様のお役に立てば幸いです。
PHP オブジェクト チェーン操作の実装原理分析に関連するその他の記事については、PHP 中国語 Web サイトに注目してください。