ホームページ >バックエンド開発 >PHPチュートリアル >PHPでのコンストラクタの使い方を詳しく解説

PHPでのコンストラクタの使い方を詳しく解説

黄舟
黄舟オリジナル
2017-07-02 09:37:451871ブラウズ

PHPconstructorの使用分析

PHPコンストラクターの宣言は、名前がconstruct()である必要があることを除いて、他の操作の宣言と同じです。これは PHP5 での変更です。以前のバージョンでは、コンストラクターの名前はクラス名と同じである必要がありました。これは PHP5 でも使用できますが、この利点は、コンストラクターを使用できることです。クラス名に関係なく、クラス名が変更された場合でも、対応するコンストラクター名を変更する必要はありません。下位互換性のため、クラス内にconstruct()という名前のメソッドがない場合、PHPはクラス名と同じ名前でphp4で書かれたコンストラクターメソッド検索します。形式: function construction ([parameter]) { … … } クラス内で宣言できるコンストラクター メソッドは 1 つだけですが、そのコンストラクター メソッドはオブジェクトが作成されるたびに 1 回しか呼び出されないため、このメソッドをアクティブに呼び出すことはできません。通常、いくつかの便利な初期化タスクを実行するために使用されます。たとえば、オブジェクトの作成時に attribute に初期値を割り当てます。

1. //创建一个人类 
2. 
3. 0class Person  
4. 0{  
5. //下面是人的成员属性  
6. var $name;       //人的名子  
7. var $sex;        //人的性别  
8. var $age;        //人的年龄  
9. //定义一个构造方法参数为姓名$name、性别$sex和年龄$age  
10. function 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. function say()  
21. { 
22. echo "我的名子叫:".$this->name." 性别:".$this->sex." 我的年龄是:".$this->age."<br>";  
23. }  
24. }  
25. //通过构造方法创建3个对象$p1、p2、$p3,分别传入三个不同的实参为姓名、性别和年龄 
26. $p1=new Person("张三","男", 20);  
27. $p2=new Person("李四","女", 30);  
28. $p3=new Person("王五","男", 40);  
29. //下面访问$p1对象中的说话方法  
30. $p1->say();  
31. //下面访问$p2对象中的说话方法  
32. $p2->say();  
33. //下面访问$p3对象中的说话方法  
34. $p3->say();
出力結果は次のとおりです:

私の名前: Zhang San 性別: 男性 私の年齢: 20

私の名前: Li Si 性別: 女性 私の年齢: 30

私の名前 名前: Wang Wu 性別:男性 私の年齢は40歳です

以上がPHPでのコンストラクタの使い方を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。