开发者社区> 问答> 正文

mysqli或PDO-优缺点是什么?

在我们的位置上,我们在使用mysqli和PDO进行诸如准备好的语句和事务支持之类的操作之间是分开的。有些项目使用一个,另一些使用。我们迁移到另一个RDBMS的现实可能性很小。

我更喜欢PDO,这是因为它允许预准备语句使用命名参数,而据我所知mysqli不允许。

在我们将项目合并为仅使用一种方法时,是否有其他选择作为标准的利弊?

问题来源于stack overflow

展开
收起
保持可爱mmm 2019-11-15 15:21:01 334 0
1 条回答
写回答
取消 提交回答
  • 好吧,您可以与面向对象方面,准备好的语句,它成为标准的事实等进行争论。但是我知道,在大多数情况下,说服某人使用杀手级功能会更好。就是这样:

    使用PDO的真正好处是您可以获取数据,并将其自动注入到对象中。如果您不想使用ORM(因为这只是一个快速的脚本),但是您确实喜欢对象映射,那真的很酷:

    class Student {

    public $id;
    public $first_name;
    public $last_name
    
    public function getFullName() {
        return $this->first_name.' '.$this->last_name
    }
    

    }

    try { $dbh = new PDO("mysql:host=$hostname;dbname=school", $username, $password)

    $stmt = $dbh->query("SELECT * FROM students");
    
    /* MAGIC HAPPENS HERE */
    
    $stmt->setFetchMode(PDO::FETCH_INTO, new Student);
    
    
    foreach($stmt as $student)
    {
        echo $student->getFullName().'<br />';
    } 
    
    $dbh = null;
    

    } catch(PDOException $e) { echo $e->getMessage(); }

    2019-11-18 13:03:29
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载