理解「警告:mysqli_query() 期望參數1 為mysqli,在」中給出null
在您建立自訂CMS 的過程中,您可能遇到可怕的錯誤訊息:「警告:mysqli_query() 需要參數1為MySQLi,其中給出 null。
錯誤原因
該錯誤表明您的getPosts() 函數正在嘗試存取$con 變量,該變量儲存MySQLi 連接對象,但在該函數的範圍內無法訪問它。這是因為 $con 是在 getPosts() 函數之外定義的。
解決方案:將連接作為依賴項傳遞
要解決此問題,您需要傳遞連接物件作為 getPosts() 函數的依賴項。透過這樣做,該函數可以存取連接並執行必要的資料庫操作。
function getPosts(mysqli $con) { // Code to query the database using $con }
防止進一步的錯誤
為了最大限度地減少潛在問題,請考慮使用以下內容處理連接錯誤並拋出異常的代碼:
mysqli_report(MYSQLI_REPORT_ERROR | MYSQLI_REPORT_STRICT); // throw exceptions $con = mysqli_connect("localhost", "xxxx", "xxxx", "xxxxx"); getPosts($con);
其他提顯示
以上是為什麼我的'mysqli_query()”函數收到空值而不是 MySQLi 連接物件?的詳細內容。更多資訊請關注PHP中文網其他相關文章!