我在php中有这样的类
class database
var $db;
{
function ___constructor($db)
{
$this->db= $db;
}
}
现在我这样称呼它
$obj = new database();
它的投掷错误如何解决这个问题?
它假设自动调用默认构造函数。当我没有传递任何价值。
答案 0 :(得分:3)
会发生这种情况,因为您在使用$db
打开课程之前添加了{
。
像这样使用:
class database {
var $db; //Comes here
function __construct($db) {
$this->db = $db;
}
}
<强>更新强>
请注意,请参阅此答案下面的评论。
答案 1 :(得分:2)
您当前的构造函数需要传递参数。您需要在方法定义中为参数提供默认值。
function __construct($db='default') {
$this->db = $db;
}
你的括号也错了。 var $db
不在类定义中。我非常确定无法正确解析。在班级名称
class database{
...
}
看起来你在构造函数名称中有太多下划线它应该有2 __construct