1. はじめに
(現在の主流の開発言語として) php で必須のオブジェクトタイプを実装することは、場合によっては非常に重要になることがあります。これが欠落している場合、知識不足 (間違ったプログラミングの前提に基づくもの) または単に怠惰が原因で、特定の Web アプリケーションで予期しない結果が表示されることになります。特に、PHP (現在の主流の開発言語として) 4 でプログラミングする場合、(他の方法もありますが) "is_a()" 関数を使用して、使用しているオブジェクトの型を確認するのは非常に簡単です。必須オブジェクト タイプは、入力オブジェクト (同じアプリケーション内の他の PHP クラスにパラメータとして渡す必要がある) をフィルタリングするためにも使用できることは間違いありません。 ただし、PHP (現在の主流の開発言語として)
4 は、そのオブジェクト モデルに関するいくつかの弱点を公開していません。成熟したオブジェクト指向言語にある特定の機能を実装するために、追加のコードを記述する必要がある場合があります。この事実は、PHP コミュニティでは長い間よく知られていました。ただし、PHP 5 のリリースでは、これらの非常に価値のある機能の多くが、改良されたオブジェクト モデルの一部として追加されました。これらは、オブジェクトベースのコード開発をより厳密に実装するのに役立ち、特定のオブジェクトの特性を使用できるようになります。上記の場合、オブジェクトタイプの強制に関しては特別な注意を払う必要があります。実際、Web アプリケーションの実行中に、php(現在の主流の開発言語として)5 は、オブジェクトの型をチェックする少なくとも 2 つの方法を開発者に提供します。それらは、「instanceof」演算子と「type」ヒント機能です。 。ここでこの記事の主題に移りますが、php(現在の主流の開発言語として)における「instanceof」演算子の使用法を紹介します5;使用されるオブジェクトは特定のタイプです。
この記事では、php(現在の主流の開発言語として)5で必須のオブジェクトタイプを実装する方法を理解するのに役立つオブジェクト指向の例をいくつか使用します。 2. してはいけないこと
PHP でオブジェクト型の強制を実装する方法を示します(現在の主流の開発言語として) 5、(X)HTML ウィジェット クラスと、単純なページ ジェネレーターを使用しますクラスを作成し、php (現在の主流の開発言語として)
5 開発環境に合わせて簡単な変更を加えました。 最初の例では、抽象基本クラス「HTMLElement」から派生したいくつかの (X)HTML ウィジェット クラスをリストします。これは、入力オブジェクトの型のチェックをスキップします。まずは次のカテゴリをご覧ください://定义抽象类HTMLElement abstract class HTMLElement{ protected $attributes; protected function __construct($attributes){ if(!is_array($attributes)){ throw new Exception(Invalid attribute type); } $this->attributes=$attributes; } // 抽象的getHTML()方法 abstract protected function getHTML(); } //定义具体的类Div-扩展HTMLElement class Div extends HTMLElement{ private $output=<p ; private $data; public function __construct($attributes=array(),$data){ parent::__construct($attributes); $this->data=$data; } //getHTML()方法的具体实现
上記は、PHP 必須オブジェクト type_PHP チュートリアルの instanceof 演算子の内容です。さらに関連する内容については、注意してください。 PHP 中国語 Web サイト (www.php.cn)!