2016-11-23 3 views
1

Ich möchte einen Unix-Timestamp-Wert in eine Postgres Timestamp Spalte mit der PHP-Methode pg_query_params einfügen, aber stecken bleiben.Unix Sekunde in Postgres Timestamp mit PHP pg_query_params

Hier ist der unvollständige Code:

$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); 

F: wie der Unix-Sekunden-Wert zu transformieren, um etw. Postgres akzeptiert?

Antwort

1

Verwenden Sie die Funktion to_timestamp(double precision):

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

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

Ihr Code wie folgt aussehen (Standard-Zeitzone verwendet wird):

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

das ist es! Danke für die Antwort - und Entschuldigung für die Verzögerung. – Gisela

Verwandte Themen