مجیک متد
__debugInfo() :این متد برای تعریف اطلاعاتی است که برای نمایش در روند
debugging یا در تابع var_dump() از یک شئ استفاده میشود. با تعریف تابع __debugInfo() در کلاس خود، شما میتوانید اطلاعات مخصوصی را برای نمایش در این فرایندها تعیین کنید.این متد باید یک آرایه اطلاعات را برگرداند که شامل جفتهای
key-value است. این جفتها باید مشخص کننده ویژگیها و مقادیر آنها در شئ باشند که میخواهید در روند debugging نمایش داده شوند.مثال:
class Fruit {
public $name;
public $color;
public function __debugInfo() {
return [
'fruit name' => $this->name,
'fruit color' => $this->color
];
}
}
$fruit = new Fruit();
$fruit->name = 'banana';
$fruit->color = 'yellow';
var_dump($fruit);
Result:object(Fruit)#1 (2) {
["fruit name"]=>
string(6) "banana"
["fruit color"]=>
string(6) "yellow"
}
در این مثال می بینیم که هنگام
var_dump() شئ، موارد مشخص شده در __debugInfo() به نمایش در می آید.با این کار می توانیم تنها موارد مورد نیاز را نمایش دهیم و روند debugging را راحت تر کنیم..