我有一个网站上线大约5年了。刚才我注意到我使用mysql连接。
我想把它改成mysqli。
所以,我有一些问题。要将mysql更改为mysqli,我只需要在所有mysql单词后面加上"I"?
查询
eg
$i=mysql_query("INSERT
to
$i=mysqli_query("INSERT
num行:
$num = mysql_num_rows($rs);
to
$num = mysqli_num_rows($rs);
字符串转义:
mysql_real_escape_string
to
mysqli_real_escape_string
提取阵列
$l = mysql_fetch_array($re);
to
$l = mysqli_fetch_array($re);
这么简单吗?或者我需要知道其他事情?
mysqli_connect("localhost","my_user","my_password","my_db");
而不是mysqli的mysql_connect("localhost", "my_user","my_password");
这将实际指导您完成:http://lv1.php.net/manual/en/class.mysqli.php
虽然mysql
只是过程样式函数,但新的mysqli
同时是:过程样式和对象样式。
你可以使用面向对象的风格,比如:
$mysqli = new mysqli('localhost', 'my_user', 'my_password', 'my_db');
if ($mysqli->connect_error) {
die('Connect Error (' . $mysqli->connect_errno . ') '
. $mysqli->connect_error);
}
或程序风格:
$link = mysqli_connect('localhost', 'my_user', 'my_password', 'my_db');
if (!$link) {
die('Connect Error (' . mysqli_connect_errno() . ') '
. mysqli_connect_error());
}
mysqli的参数被反转,即mysql_query($q,$dbc)变成了mysqli_query($dbc,$q)。还有一些函数需要额外的参数,通常是连接。Php.net有一个所有变化的完整列表。
更新:
//your connection script should look somthing like this.
$db_connnect = mysqli_connect('localhost','username','password','db_name');
//the page you require the connection on should look something like this.
require_once ('db_connect.php');
//a mysqli query would look something like this.
$q = "select * from user limit 12";
$r = mysqli_query("$db_connnect, $q");
while($row = mysqli_fetch_array($r)) { ... }