的mysqli_select_db
功能,當使用程序API要求您傳遞實際連接作爲第一個參數,as shown on the man pages。此連接或鏈接是mysqli_connect
返回的內容,因此您不應忽略什麼mysqli_connect
returns,而是將其分配給變量。
該功能的簽名清楚地告訴你所有這一切,所以請,RTM。下面的幾個拷貝粘貼發揮:
\/=============================|
bool mysqli_select_db (mysqli $link , string $dbname) ||
//returns bool argument 1 argument 2 ||
mysqli mysqli_connect ([...]) ||
//returns type mysqli accepts vast number of arguments ||
// ||
|======== useful here =======================|
這意味着你必須寫:
$db = mysqli_connect('localhost', 'root', '');
mysqli_select_db($db, 'video_system');
如手動& &簽名秀,這mysqli_select_db
返回一個布爾值。 true
表示數據庫已成功選中,false
表示失敗。最好養成檢查函數返回值的習慣。不管它看起來多麼微不足道。所以:
$db = mysqli_connect('localhost', 'root', '');
if (!mysqli_select_db($db, 'video_system'))
{//if return value is false, echo error message and exit script
echo 'Failed to select db "video_system": ', mysqli_error($db), PHP_EOL;
$db = null;//optional, but generally safer
exit(1);//stop execution
}
//db selected, get to work here
但是你可以很容易忽略這第二個函數調用,從關通過選擇的數據庫名稱爲mysqli_connect
功能:
$db = mysqli_connect('127.0.0.1', 'root', '', 'video_system');
這樣可以節省附加功能的開銷呼叫,這會略微提高性能。我還將localhost
字符串更改爲IP地址127.0.0.1,這也可以提供幫助,因爲使用IP意味着該字符串不需要解析爲相應的IP地址。
總而言之,我認爲最好你花一些時間reading the documentation