gpt4 book ai didi

php - CakePHP PDO 准备语句

转载 作者:行者123 更新时间:2023-11-29 04:45:16 26 4
gpt4 key购买 nike

我正在使用 CakePHP 2.4.1,我需要直接访问 PDO,以便从我的 MySQL 数据库中逐行提取一组记录。

这是我正在使用的导致问题的代码片段:

            // Get PDO access
$this->_pdo = $this->Event->getDataSource();

try {

// Start transaction
$this->_pdo->begin();

// All the past events
$stm = $this->_pdo->prepare("SELECT `id` FROM `events` WHERE `stop_time` < '" . date('Y-m-d H:i:s') . "'");

// Loop through the events
if( $stm->execute() ) {
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
// ....
}
}

// Commit transaction
$this->_pdo->commit();

} catch (Exception $e) {

// Rollback transaction
$this->_pdo->rollback();

CakeLog::write('error', $e );
}

但是,一旦我启动脚本,我就会收到此错误消息

PHP Fatal error:  Call to undefined method Mysql::prepare()

但是我看到这个框架支持 PDO,特别是 prepare() 函数。 CakePHP PDO Documentation

有什么想法吗?

非常感谢

最佳答案

实际上你使用的类是http://api.cakephp.org/2.4/class-DataSource.html那里没有 prepare() 方法。用这个获取PDO

 $myPDO = $this->SomeModel->getDataSource()->getConnection();

关于php - CakePHP PDO 准备语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19990357/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com