他们在PDO和MySQLi OOP方面有什么不同吗?

时间:2013-11-21 11:44:38

标签: php oop pdo mysqli

一些例子......

  
    

MySQLi Connect

$mysqli = new mysqli('host', 'user', 'password', 'database');
  
  
    

PDO Connect

$pdo = new PDO("mysql:host=localhost;dbname=database", 'username', 'password');
  

  
    

MySQLi查询

$mysqli->query("INSERT INTO tabel (name) VALUES ('Peter')");
  
  
    

PDO查询

$pdo->query("INSERT INTO tabel (name) VALUES ('Peter')");
  

  
    

MySQLi提交

$mysqli->commit();
  
  
    

PDO提交

$pdo->commit();
  

那么,之间究竟有什么区别?对我而言,在编码时它是完全相同的..速度/安全性等的任何差异。 ?

2 个答案:

答案 0 :(得分:3)

你使用谷歌吗? PHP.net提供了有关此主题的详细页面。

http://php.net/manual/en/mysqlinfo.api.choosing.php

差异在于键(比较mysql功能):

API支持使用mysqlnd进行非阻塞的异步查询: Mysqli是的,PDO没有

支持所有MySQL 5.1+功能: Mysqli是,PDO最

API支持多种语句: Mysqli是,PDO最多

但是mysqli和PDO之间的关键区别是, 您也可以使用 PDO作为SQLITE,Oracle,MS-SQL的接口 ..... Mysqli只适用于mysql

答案 1 :(得分:0)

  

PDO和MySQLi OOP有什么不同吗?

是。
刚开始实际使用它,你会看到。

一般来说,唯一的区别是mysqli是高级DB访问库的某种构造材料,不应该按原样使用。虽然PDO已经是这样一个库,可以按原样使用。