0

我想知道如何从“类本身”的函数接收结果。这方面的一个例子是 PDO 函数,我可以在其中执行以下操作来获取最后一个 ID:

$db->query($sql);
$id = $db->lastInsertId();

现在我必须执行以下操作:

$newThread = $forums->newThread('title','category');
$id = $newThread['id'];

当然这很好用,但我必须使用变量 $newThread,我不想这样做。如何保存该值以便以后调用它?

4

2 回答 2

0

如果您在理解 PDO 版本的工作原理时遇到问题,大致如下:

class PDO {

    private $lastInsertId;

    public function query($sql) {
        magic_sql_api_call($sql);
        /* here be dragons */

        $this->lastInsertId = magic_sql_api_get_last_insert_id();
    }

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

}
于 2013-06-25T08:18:57.837 回答
0

您可以创建这样的代码

class Forums {
    private $id;
    ...

    function createTread($title, $category) {
       $newThread = $forums->newThread($title, $category);
       $this->id = $newThread['id'];
    }
    function lastId() {
        return $this->id;
    }
}

你可以使用它

$forums->createTread('title','category');
$id = $forums->lastId();

您可能还需要将 $newThread 保存在属性中。

于 2013-06-25T08:21:15.983 回答