- mysql
<?php
$conn = mysql_connect("localhost", "root", "") or die("Mysql connect error");
mysql_select_db("test", $conn);
$res = mysql_query("select * from user");
var_dump($res);
?>
从PHP5.0开始就不推荐使用mysql_connect()函数,到了php7.0则直接废弃了该函数,替代的函数是:mysqli_connect();
- mysqli(mysql improved)
<?php
$conn = mysqli_connect("127.0.0.1", "root", "", "test") or die("Mysql connect error".mysqli_connect_error());
$res = mysqli_query($conn, "select * from user");
while ($row = $res->fetch_object()) {
var_dump($row);
}
?>
- pdo(php data object)
<?php
$pdo = new pdo("mysql:host=127.0.0.1;dbname=test", "root", "");
$query="select * from user";//需要执行的sql语句
$res = $pdo->prepare($query);//准备查询语句
$res->execute();
while($result = $res->fetch(PDO::FETCH_ASSOC)) {
var_dump($result);
}
?>
mysql是非持续连接函数而mysqli是永远连接函数。mysql每次连接都会打开一个连接的进程而mysqli多次运行mysqli将使用同一连接进程,从而减少了服务器的开销。
由于PDO能够支持其它非MySQL的数据库,而MySQLi专门针对MySQL设计的,所以MySQLi相对于PDO性能稍微好一些。但是PDO和MySQLi都还是没有PHP原生的MySQL扩展快。
PDO支持12种数据库驱动和命名参数绑定是其最大优点。