首頁 >後端開發 >php教程 >為什麼我的 PHP 程式碼拋出「無法將 mysqli_result 類別的物件轉換為字串」?

為什麼我的 PHP 程式碼拋出「無法將 mysqli_result 類別的物件轉換為字串」?

Susan Sarandon
Susan Sarandon原創
2024-12-27 15:09:11699瀏覽

Why Does My PHP Code Throw

理解「Object of class mysqli_result 無法轉換為字串」錯誤

嘗試時出現錯誤訊息「Object of class mysqli_result 無法轉換為字串」將mysqli_result 物件視為字串。當 PHP 腳本無法正確處理使用 mysqli_query() 方法從 MySQL 查詢獲得的結果時,通常會發生這種情況。

要解決此錯誤,必須了解 mysqli_result 物件的性質。 mysqli_query() 方法不會傳回字串,而是傳回包含查詢傳回的行的物件。因此,嘗試直接使用此物件作為字串(如範例程式碼中所示)將觸發上述錯誤。

正確的方法包括迭代結果物件以檢索各個行及其對應的值。這可以使用 fetch_assoc() 或 fetch_array() 方法分別以關聯數組或索引數組的形式存取結果物件中的行來實現。

解決方案中提供的程式碼片段示範如何正確迭代結果物件並使用fetch_assoc() 方法顯示每行的「classtype」值:

$result = mysqli_query($con, "SELECT classtype FROM learn_users WHERE username='abcde'");

while ($row = $result->fetch_assoc()) {
    echo $row['classtype'] . "<br>";
}

透過使用此方法,腳本成功處理查詢結果並輸出指定使用者名稱的「classtype」值,而不會遇到「Object of class mysqli_result Could not be Converted to string”錯誤。

以上是為什麼我的 PHP 程式碼拋出「無法將 mysqli_result 類別的物件轉換為字串」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn