首頁 > 後端開發 > php教程 > MySQL 的 `mysql_` 和 `mysqli_` API 可以在 PHP 中一起使用嗎?

MySQL 的 `mysql_` 和 `mysqli_` API 可以在 PHP 中一起使用嗎?

Mary-Kate Olsen
發布: 2025-01-04 11:21:35
原創
341 人瀏覽過

Can MySQL's `mysql_` and `mysqli_` APIs Be Used Together in PHP?

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中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板