เมธอด __construct
เมธอด __construct เป็นเมธอดพิเศษของคลาสซึ่งจะถูกเรียกใช้โดยอัตโนมัติเมื่อสร้างอ็อบเจกต์ใหม่ขึ้นมา โดยใช้เพื่อกำหนดค่าเริ่มต้นให้กับคุณสมบัติของอ็อบเจกต์ หรือดำเนินการตั้งค่าเริ่มต้นอื่น ๆ ต่างจากเมธอดทั่วไปตรงที่เราไม่จำเป็นต้องเรียกคอนสตรัคเตอร์โดยตรง
ไวยากรณ์
class ClassName {
public function __construct([parameters]) {
// initialization code
}
}
ตัวอย่าง
มาสร้างคลาสง่าย ๆ ที่มีคอนสตรัคเตอร์สำหรับกำหนดคุณสมบัติ $name:
<?php
class User {
public $name;
public function __construct($name) {
$this->name = $name;
}
}
$user = new User('John');
echo $user->name;
?>
ผลลัพธ์จากการรันโค้ด:
'John'
ตัวอย่าง
คอนสตรัคเตอร์สามารถรับพารามิเตอร์ได้หลายค่า และทำการตั้งค่าเริ่มต้นที่ซับซ้อนได้:
<?php
class Product {
public $id;
public $price;
public function __construct($id, $price) {
$this->id = $id;
$this->price = $price * 1.2; // เพิ่มภาษีมูลค่าเพิ่ม 20%
}
}
$product = new Product(101, 100);
echo $product->price;
?>
ผลลัพธ์จากการรันโค้ด:
120
ดูเพิ่มเติม
-
เมธอด
__destruct,
ซึ่งถูกเรียกเมื่อทำลายอ็อบเจกต์ -
เมธอด
__clone,
ซึ่งถูกเรียกเมื่อโคลนอ็อบเจกต์