MySQL API 可以在 PHP 中混合嗎?
不建議在 PHP 中混合 MySQL API。 PHP 提供了兩個 MySQL API 擴充功能:mysql_ 和 mysqli_。這些擴展是獨立的,並且它們的資源不相容。
您提供的程式碼示範了該問題:
$con = mysqli_connect("localhost", "root" ,"" ,"mysql"); if( mysqli_connect_errno( $con ) ) { echo "failed to connect"; }else{ echo "connected"; } mysql_close($con); echo "Done";
此程式碼導致以下錯誤:
Connected Warning: mysql_close() expects parameter 1 to be resource, object given in D:\************.php on line 9 Done
發生此錯誤是因為mysql_close() 需要MySQL 資源作為輸入,但您提供了mysqli
解決方案:
要解決此問題,請在整個程式碼中一致地僅使用一個 MySQL API 擴充功能。如果您使用 mysqli_ 擴展,請使用 mysqli_connect() 和 mysqli_close() 開啟和關閉連線。同樣,如果您使用 mysql_ 擴展,請使用 mysql_connect() 和 mysql_close()。
檢查連線有效性:
mysql_connect_errno() 和 mysqli_connect_errno() 都可以用來檢查連線是否有效。如果傳回值為0,則連線有效。否則就會出錯。
範例:
$con = mysqli_connect("localhost", "root" ,"" ,"mysql"); if( mysqli_connect_errno( $con ) ) { echo "failed to connect: " . mysqli_connect_error(); }else{ echo "connected"; }
以上是MySQL 的 `mysql_` 和 `mysqli_` API 可以在 PHP 中一起使用嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!