简体   繁体   English

如何在 mysql 中将 unix-timestamp 转换为 dmY

[英]How to convert unix-timestamp to d-m-Y in mysql

In a php-script I do a query for reading record from my sql-database.在 php 脚本中,我执行查询以从我的 sql 数据库中读取记录。 In every -record there is a datefield 'birthdate'.在每个记录中都有一个日期字段“生日”。 This datefield is a bigint typefield.此日期字段是一个 bigint 类型字段。 The result of my script is a unix-timestamp and a empty field.我的脚本的结果是一个 unix-timestamp 和一个空字段。 What is wrong?怎么了? See my code.看我的代码。 The result:结果:

Birthdate         Birthdate
157766400         01-01-1970
410227200         01-01-1970
and so on

...

<?php
    $pdo = new PDO('mysql:host=localhost;dbname=local-db;charset=utf8', 'root', '');
    $sql = "SELECT birthdate FROM wp_pdb WHERE 1;
    foreach ($pdo->query($sql) as $row) {
    echo "<tr><td>" . 
        $row['birthdate'] . "</td><td>" . 
        date('d-m-Y',strtotime($row['birthdate'])) . "</td><td>" . 
        "<br /> ";
}
?>
...

Have you try this?你试过这个吗?

DATE_FORMAT(FROM_UNIXTIME(`date`), '%d-%m-%Y') AS 'date'

No need to use strtotime - the number you're getting is already parsed that way.无需使用 strtotime - 您获得的数字已经以这种方式解析。 Just do做就是了

date('d-m-Y', $row['birthdate'])

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM