在 sql 输出上转换可读的 Unix 时间

Convert Unix time readable on sql output

我想将 time_read_epoch 值转换成可读的时间格式,但我无法在 table 输出期间让它工作。该值在 MariaDB 数据库中保存为 bigint。 也许有人可以帮助我。

$result = $conn->query($sql);
if ($result->num_rows > 0) {
    echo "<table><tr>   <th>Zeitstempel</th>
                        <th>Messwert</th>
                        <th>Postleitzahl</th>
                        <th>Ort</th>
                        <th>Beschreibung Messeinheit</th>
                        <th>Messeinheit</th>
                        </tr>";
    // output data of each row
    while($row = $result->fetch_assoc()) {
      echo  "<tr><td>".$row["time_read_epoch"].
            "</td><td>".$row["value"].
            "</td><td>".$row["plz"].
            "</td><td>".$row["location"].
            "</td><td>".$row["unit_name"].
            " ".$row["unit"]."</td></tr>";
    }
    echo "</table>";
  } else {
    echo "0 results";
  }
  $conn->close()

您可以在 $sql 声明(您没有向我们展示)中这样做。

SELECT 
  FROM_UNIXTIME(tbl_readings.time_read_epoch) AS time_read_epoch,
  whatever...
FROM whatever...

您修改 SQL 查询以在结果集中调用 FROM_UNIXTIME() function on that BIGINT, then you give the original name of the column as an alias name