首頁 > 資料庫 > mysql教程 > 如何在 PHP 中正確回顯 MySQL 時差?

如何在 PHP 中正確回顯 MySQL 時差?

DDD
發布: 2024-12-17 06:31:24
原創
625 人瀏覽過

How to Correctly Echo a MySQL Time Difference in PHP?

在PHP 中回顯MySQL 回應的時間差

在PHP 中,您可以使用mysql_query() 函數來執行SQL SQL SQL 。但是,當您嘗試 echo() 傳回時間差的查詢結果時,可能會遇到錯誤訊息「Resource id #6」。

了解錯誤

錯誤「Resource id #6」表示 echo() 語句正在嘗試列印資源句柄而不是實際資料。資源句柄是MySQL伺服器指派給結果集的唯一識別碼。

要正確顯示時間差,需要使用fetch函數從結果集中擷取實際資料。有多個可用的取得函數,包括 mysql_fetch_row()、mysql_fetch_array() 和 mysql_fetch_assoc()。

以下是使用mysql_fetch_assoc() 函數的範例:

$result = mysql_query(sprintf("SELECT TIMEDIFF(NOW(), '%s') as time_delta", $row['fecha']));
if ($result) {
  $data = mysql_fetch_assoc($result);
  echo $data['time_delta'];
}
登入後複製

注意:

mysql_* 函數已棄用,不應在新項目中使用。相反,請使用 PDO_MySQL 或 mysqli 擴充。

使用 PDO 的改進範例

$pdo = new PDO('mysql:host=localhost;dbname=database_name', 'username', 'password');
$stmt = $pdo->prepare("SELECT TIMEDIFF(NOW(), :fecha) as time_delta");
$stmt->bindParam(':fecha', $row['fecha'], PDO::PARAM_STR);
$stmt->execute();
$data = $stmt->fetch(PDO::FETCH_ASSOC);
echo $data['time_delta'];
登入後複製

以上是如何在 PHP 中正確回顯 MySQL 時差?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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