PHP 擴展 Mysql 與 Mysqli

PHP開發中,使用Mysql擴展來連接Mysql數據庫進行增刪改查等操做。javascript

在選擇Mysql擴展的時候,官方提供了兩種:php

MySQL 原始版。java

cn.php.net/manual/zh/b…mysql

從 PHP 5.5.0 起這個擴展已經被廢棄,而且從 PHP 7.0.0. 開始被移除。sql

做爲替代,可使用 mysqli 或者 PDO_MySQL 擴展代替。數據庫

MySQL 原始版

MySQL 加強版。後端

cn.php.net/manual/zh/b…緩存

mysqli擴展容許咱們訪問MySQL 4.1及以上版本提供的功能。安全

特性比較服務器

特性 mysqli mysql
PHP版本 >=5.0 >3.0
MySQL開發狀態 活躍 僅維護
MySQL建議使用 首選 建議
API的字符集支持
存儲過程支持狀況
多語句執行支持狀況
是否支持全部MySQL4.1以上功能

MySQLi 的 i 表明 Improvement。

MySQL 加強版

相關概念

MySQL 與 MySQLi 都是PHP方面的函數集。

在 PHP5 版本之後,增長了mysqli的函數功能。

某種意義上講,它是MySQL系統函數的加強版,更穩定更高效更安全。

鏈接進程

MySQL 每次連接都會打開一個鏈接的進程。

MySQLi 屢次運行將使用同一鏈接進程,減小了服務器的開銷。

連接方式

<?php
  //Mysql鏈接
  $conn = @mysql_connect("localhost", "root", "") or die("數據庫鏈接錯誤");
  mysql_select_db("user", $conn);
  mysql_query("set names 'utf8'");
  echo "數據庫鏈接成功";

  //Mysqli鏈接
  $conn = mysqli_connect('localhost', 'root', '', 'user');
  if (!$conn) {
    die("數據庫鏈接錯誤" . mysqli_connect_error());
  } else {
    echo"數據庫鏈接成功";
  }複製代碼

順便說 mysqlnd

Mysql Native驅動(Mysql Native Driver 簡稱:mysqlnd)。

在 PHP5.3.0 版本中被引入。

在 PHP5.4 以後的版本mysqlnd被做爲默認配置選項。

由zend公司開發的MySQL數據庫驅動。

mysqlnd 提供了和Zend引擎高度的集成性,更加快速的執行速度,更少的內存消耗,利用了PHP的Stream API,以及客戶端緩存機制。

因爲 mysqlnd 是透過Zend引擎,所以提供更多高級特性,以及有效利用Zend進行加速。

mysqlnd

建議

PHP版本爲5.x建議使用 mysqli 擴展。

PHP版本爲7 只能使用 mysqli 擴展。

Thanks ~


做者:PHP後端開發者

提供技術相關服務(本身懂的知識)。

QQ羣:564557094。

關注微信公衆號,留言便可,看到留言後會及時回覆。

IT小圈兒
相關文章
相關標籤/搜索