PHP コンストラクターの宣言は、名前が __construct() である必要があることを除いて、他の操作の宣言と同じです。これは PHP5 での変更です。以前のバージョンでは、コンストラクターの名前はクラス名と同じである必要がありました。これは PHP5 でも使用できますが、この利点は、コンストラクターを使用できることです。クラス名に関係なく、クラス名が変更された場合でも、対応するコンストラクター名を変更する必要はありません。下位互換性のために、クラスに __construct() という名前のメソッドがない場合、PHP はクラス名と同じ名前で php4 で記述されたコンストラクター メソッドを検索します。形式: function __construct ([parameter]) { … … } クラス内で宣言できるコンストラクター メソッドは 1 つだけですが、コンストラクター メソッドはオブジェクトが作成されるたびに 1 回しか呼び出されません。このメソッドはアクティブに呼び出すことができないため、通常は使用します。いくつかの便利な初期化タスクを実行するために使用されます。たとえば、オブジェクトの作成時に、対応するプロパティに初期値が割り当てられます。
1. //人間を作成する
2.
3.0クラスの人
4.0{
5. //以下は人々のメンバー属性です
6. var $name //その人の名前;
7. var $sex //人の性別。
8. var $age // 人の年齢;
9. //コンストラクターパラメータを名前$name、性別$sex、年齢$ageとして定義します。
10. 関数 __construct($name, $sex, $age)
11. {
12. //構築メソッドを通じて渡された $name は、メンバー属性 $this->name に初期値を割り当てます
13. $this->name=$name;
14. //構築メソッドを通じて渡された $sex は、メンバー属性 $this->sex に初期値を割り当てます
15. $this->sex=$sex;
16. //構築メソッドを通じて渡された $age は、メンバー属性 $this->age に初期値を割り当てます。
17. $this->age=$age;
18. }
19. //この人の話し方
20.関数say()
21。 {
22. echo "私の名前は: ".$this->name." 性別: ".$this->性別" 私の年齢: ".$this->age."
say();
31. //以下は、$p2 オブジェクトの発話メソッドにアクセスします。
32. $p2->say();
33. //以下は、$p3 オブジェクトの発話メソッドにアクセスします。
34. $p3->say();
出力結果は次のとおりです。
私の名前:Zhang San 性別:男性 私の年齢:20
私の名前は: Li Si 性別: 女性 私の年齢: 30
私の名前は: Wang Wu 性別: 男性 私の年齢: 40