標籤:php開發 互連網
650) this.width=650;" src="http://s3.51cto.com/wyfs02/M02/6E/EE/wKiom1WLxsaRCQ6KAAC_WydWyYQ068.jpg" title="php開發-麥子學院" alt="wKiom1WLxsaRCQ6KAAC_WydWyYQ068.jpg" />
Php開發中,我們常用mysql與mysqli兩個函數集,這兩個函數集寫法上只差一個字母,但作用及功能卻差之千裡,下面小編就為大家分享分享這兩個函數集的不同之處。
一、mysql與mysqli的概念
首先我們開看看mysql與mysqli分別是什麼鬼?
1、mysql與mysqli都是php方面的函數集,與mysql資料庫關聯不大。
2、在php 5版本之前,一般是用php的mysql函數去驅動mysql資料庫的,比如mysql_query()的函數,屬於面向過程的函數。
3、在php5版本以後,增加了mysqli的函數功能,某種意義上講,它是mysql系統函數的增強版,更穩定更高效更安全,與mysql_query()對應的有mysqli_query(),屬於物件導向,用對象的方式操作驅動mysql資料庫。
二、mysql與mysqli的區別
說完mysql與mysqli的概念,我們來說說他們到底有什麼區別:
1、mysql是非持繼串連函數,mysql每次連結都會開啟一個串連的進程。
2、mysqli是永遠串連函數,mysqli多次運行mysqli將使用同一串連進程,從而減少了伺服器的開銷。mysqli封裝了諸如事務等一些進階操作,同時封裝了DB操作過程中的很多可用的方法。
三、mysql與mysqli的用法
1、mysql:
$conn = mysql_connect(‘localhost‘, ‘user‘, ‘password‘);//串連mysql資料庫
mysql_select_db(‘data_base‘); //選擇資料庫
$result = mysql_query(‘select * from data_base‘);//第二個選擇性參數,指定開啟的串連
$row = mysql_fetch_row( $result ) ) //只取一行資料
echo $row[0]; //輸出第一個欄位的值
2、mysqli:
$conn = new mysqli(‘localhost‘, ‘user‘, ‘password‘,‘data_base‘);//要使用new操作符,最後一個參數是直接指定資料庫
$result = $conn -> query( ‘select * from data_base‘ );
$row = $result -> fetch_row(); //取一行資料
echo row[0]; //輸出第一個欄位的值
四、mysql_connect()與mysqli_connect()
1、使用mysqli,可以把資料庫名稱當作參數傳給mysqli_connect()函數,也可以傳遞給mysqli的建構函式;
2、如果調用mysqli_query()或mysqli的物件查詢query()方法,則串連標識是必需的。
以上就是php開發中,mysql與mysqli的概念及用法上的不同,希望對初學php開發的你有所協助。
推薦學習:php開發視頻教程
mysql與mysqli函數在php開發中有什麼區別?