標頭和客戶端庫次要版本不符:已使用mysqlnd 解決
此常見問題,由警告「標頭和客戶端庫次要版本」指示當PHP 用戶端庫和資料庫伺服器標頭之間存在差異時,就會出現「版本不符」的情況。
要解決此問題,建議使用 mysqlnd 驅動程序,該驅動程式專為 MySQL/MariaDB 相容性而設計。使用指令 sudo apt-get install php5-mysqlnd 在 PHP 中安裝此驅動程式可以修正不符問題。
對於 PHP,如果您同時安裝了 mysqlnd 和較舊的 mysqli 擴展,請確保啟用 mysqlnd 擴展,並且mysqli 被停用。以下PHP INI 配置可以提供幫助:
; Extension for handling MySQL extension=mysqlnd disable_functions=mysql_connect,mysql_pconnect,mysql_close,mysql_select_db,mysql_query,mysql_fetch_lengths,mysql_stmt_init,mysql_stmt_prepare, mysql_stmt_execute,mysql_stmt_result_metadata,mysql_stmt_fetch,mysql_stmt_store_result,mysql_stmt_free_result,mysql_stmt_num_rows
如果您使用PDO 連接,如下修改PDO 連接屬性可以進一步解決任何剩餘問題:
$db->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); $db->setAttribute(PDO::ATTR_STRINGIFY_FETCHES, false);
透過採用這些方法,您可以消除「標頭和用戶端庫次要版本不符」警告,並確保PHP 程式碼和MySQL/MariaDB 資料庫之間的最佳通訊。
以上是如何解決 PHP 中的「標頭和客戶端庫次要版本不符」警告?的詳細內容。更多資訊請關注PHP中文網其他相關文章!