PHPでconstructコンストラクターメソッドを実装する方法

WJ
リリース: 2023-04-08 20:42:01
オリジナル
2817 人が閲覧しました

PHPでconstructコンストラクターメソッドを実装する方法

php オブジェクト指向プログラミングのコンストラクター メソッド __construct()

php のコンストラクター メソッドは、オブジェクトの作成後にオブジェクトによって自動的に呼び出される最初のメソッドです。すべてのクラスにはコンストラクターがありますが、明示的に宣言されていない場合、デフォルトでクラス内にパラメーターがなく空のコンテンツを持つコンストラクターが存在します。

コンストラクターの役割

通常、コンストラクターは、オブジェクトの作成時にメンバーのプロパティに初期値を割り当てるなど、いくつかの便利な初期化タスクを実行するために使用されます。

クラス内コンストラクタの宣言形式

function __constrct([参数列表]){
  方法体//通常用来对成员属性进行初始化赋值
}
ログイン後にコピー

クラス内コンストラクタ宣言時の注意事項

1.のみPHP はコンストラクターのオーバーロードをサポートしていないため、同じクラスで 1 つのコンストラクターを宣言できます。

2. コンストラクター メソッド名は 2 つのアンダースコアで始まります __construct()

次に例を見てみましょう:

<?php    
class Person{                                                                                       
            
public $name;                   
public $age;                  
public $sex;                                                                                                       
        
public function __construct($name="",$sex="男",$age=27){      //显示声明一个构造方法且带参数            
$this->name=$name;            
$this->sex=$sex;                        
$this->age=$age;        
}        
public function say(){            
 echo "我叫:".$this->name.",性别:".$this->sex.",年龄:".$this->age;       
}                                                                                                  
}?>
ログイン後にコピー


パラメータを指定せずにオブジェクト $person1 を作成 $person1= new Person();echo $person1->say();//出力: 私の名前は:、性別: 男性、年齢: 27

パラメータ "Zhang San" を使用してオブジェクト $person2 を作成します。

$Person2= new Person("Zhang San");echo $person2->say();/ /出力: 私の名前は: Zhang San、性別: 男性、年齢: 27

3 つのパラメーターを使用してオブジェクト $person3 を作成します

$person3= new Person("李思" ,"男",25); echo $Person3->say();//出力: 私の名前: Li Si、性別: 男性、年齢: 25

関連資料: phpチュートリアル#########

以上がPHPでconstructコンストラクターメソッドを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート