Object 方法MyClass::\uuu get()必须正好接受1个参数

Object 方法MyClass::\uuu get()必须正好接受1个参数,object,php,Object,Php,当我试图创建我的类的新实例时,我遇到了一个错误 class MyClass { public $link; public function __construct() { $this->Connect(); } private function Connect() { $db_host = DB_HOST; // defined in included file $db_name =

当我试图创建我的类的新实例时,我遇到了一个错误

class MyClass
{    
    public $link;

    public function __construct()
    {
        $this->Connect();
    }

    private function Connect()
    {
        $db_host = DB_HOST; // defined in included file
        $db_name = DB_NAME; // defined in included file

        $this->link = new PDO("mysql:host=$db_host;dbname=$db_name;charset=UTF-8", DB_USER, DB_PASSWORD);

        $this->link->setAttribute(PDO::ATTR_AUTOCOMMIT,FALSE);

    }

    // other methods here
    // there is no custom __get() method
}
我正在尝试创建新实例并使用以下方法之一:

include "inc/myclass.php";
$db = new MyClass();
$db->InsertPost("2012-01-01 10:00", "Test content", "Test title");
我收到错误消息:

方法MyClass::\uuu get()必须正好接受1个参数

我尝试添加没有任何参数的访问器:

public function __get() 
{
    return $this;
}

但是我仍然会遇到这个错误。

我必须像这样覆盖默认访问器(get):

public function __get($name) 
{
    return $this;
}
我不明白为什么我需要那里的
$name
,但它工作得很好