這篇文章主要介紹了php+mysqli批量查詢多張表資料的方法,涉及multi_query、store_result及more_results等函數的使用技巧,需要的朋友可以參考下,注意這裡使用到了兩個新的函數multi_query與store_result,具體代碼如下:
//1、建立資料庫連接配接對象
$mysqli = new MySQLi("localhost","root","123456","liuyan");
if($mysqli->connect_error){
die($mysqli->connect_error);
}
$mysqli->query("set names 'GBK'");
//2、查詢多個資料庫表
$sqls = "select * from news limit 10,4;";
$sqls .= "select * from user;";
//3、執行并處理結果
if($res = $mysqli->multi_query($sqls)){
//注意:與$mysqli->query()不同,這裡傳回的是布爾值
do{
$result = $mysqli->store_result();//這裡才真正傳回結果集的資源對象,失敗則傳回false;
while($row = $result->fetch_assoc()){
foreach($row as $key=>$value){
echo "--$value--";
}
echo "
";
}
$result->free();
if($mysqli->more_results()){//判斷是否還存在有結果集
echo "----------查詢下一張表的資料---------------
";
}
}while($mysqli->next_result());//next_result() 傳回 true 或false;
}
//4、關閉資料庫連接配接
$mysqli->close();
?>