使用php pg_query_params将unix转换为postgres时间戳

时间:2016-11-23 23:52:45

标签: php postgresql unix-timestamp pg-query

我想使用PHP pg_query_params方法将一个unix时间戳值插入postgres时间戳列,但是卡住了。

这里是不完整的代码:

$con = pg_connect(...);
$stmt = 'INSERT INTO my_table (submitted) VALUES ($1)';
$ts = 1479939387;
$values = [translate_timestamp_into_sth_postgres_accepts($ts)];
$res = pg_query_params($con, $stmt, $values);

问:如何将unix秒值转换为sth。 postgres接受了?

1 个答案:

答案 0 :(得分:1)

使用函数to_timestamp(double precision)

select to_timestamp(1479939387) at time zone 'utc' as tstamp;

       tstamp        
---------------------
 2016-11-23 22:16:27
(1 row)

您的代码可能如下所示(使用默认时区):

$con = pg_connect(...);
$stmt = 'INSERT INTO my_table (submitted) VALUES (to_timestamp($1))';
$ts = 1479939387;
$res = pg_query_params($con, $stmt, $ts);