mysqli_fetch_object调用__construct()中的变量

时间:2013-07-29 21:19:52

标签: php object mysqli construct

我有一个类'事件',我正在通过mysqli_fetch_object创建对象。 __construct()函数正在运行,并且正在设置对象变量,但它们未在__construct()函数中设置。

我使用以下行创建对象:

$events[$x] = $result->fetch_object("Event")

当我通过调用$events[$x]->eventPlaces();运行以下函数时,它会回显变量。

public function eventPlaces()
{
    echo $this->capacity;
}

然而,在构造函数中使用相同的代码,它什么都没有。

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

道歉,如果我解释得不好,我刚回到编码,OO php对我来说是新的,如果我错过任何事情,请告诉我。

1 个答案:

答案 0 :(得分:0)

我想你希望你的班级看起来像这样:

class Event{
    protected $capacity;
    public __construct($capacity){
        $this->capacity = $capacity;
    }

    public function eventPlaces(){
        return $this->capacity;
    }
}

然后你会这样做:

$events[$x] = $result->fetch_object("Event", array(12));
echo $events[$x]->eventPlaces();