PHP中__invoke()方法詳解

__invoke(),調用函數的方式調用一個對象時的迴應方法
作用:

當嘗試以調用函數的方式調用一個對象時,__invoke() 方法會被自動調用。

注意:

本特性只在 PHP 5.3.0 及以上版本有效。

直接上代碼:

<?php
class Person
{
    public $sex;
    public $name;
    public $age;
    public function __construct($name="",  $age=25, $sex='男')
    {
        $this->name = $name;
        $this->age  = $age;
        $this->sex  = $sex;
    }
    public function __invoke() {
        echo '這可是一個對象哦';
    }
}
$person = new Person('小明'); // 初始賦值
$person();

查看運行結果:

這可是一個對象哦

當然,如果你執意要將對象當函數方法使用,那麼會得到下面結果:

Fatal error: Function name must be a string in D:\phpStudy\WWW\test\index.php on line 18
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章