將MySQL 查詢結果回顯為字串
在PHP 中,常見的任務是從MySQL 資料庫擷取資料並將其顯示在Web 上頁。但是,當嘗試回顯 MySQL 查詢的結果時,您可能會遇到錯誤“Resource id #6”,而不是預期的字串。
了解資源 ID
當使用mysql_query()等函數執行MySQL查詢時,PHP傳回資源ID而不是實際的結果資料。此資源 ID 是對查詢結果的臨時引用,可用於進一步操作資料。
取得實際結果
擷取實際結果字串,您需要使用 fetch 函數。最常見的獲取函數是 mysql_fetch_assoc(),它傳回一個關聯數組,其中鍵是列名,值是資料庫行中的對應值。
範例程式碼
以下修改後的程式碼使用mysql_fetch_assoc() 取得結果並回顯「time_delta」欄位作為預期字串:
<code class="php">$result = mysql_query(sprintf("SELECT TIMEDIFF(NOW(), '%s') as time_delta", $row['fecha'])); if($result){ $data = mysql_fetch_assoc($result); echo $data['time_delta']; }</code>
替代方法
雖然mysql_query() 和mysql_fetch_assoc() 函數仍然被廣泛使用,但值得注意的是,它們已被棄用並被更新、更安全的方法取代。考慮在新專案中使用 PDO 和 PDO_mysql 或 mysqli 來取代資料庫存取。
以上是為什麼在 PHP 中回顯 MySQL 查詢會回傳「Resource id #6」而不是字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!