2012-07-24 6 views
8

En mi base de datos he puesto fila "publicado" como una marca de tiempo, pero me sale este aviso al intentar convertir/formato es:MySQL conversión de marca de tiempo/Aviso formateo: Un valor numérico no bien formado encontró

Notice: A non well formed numeric value encountered 

código:

$posted = date('d/m/Y H:i:s', $row['posted']); 
    echo $posted; 

¿Qué estoy haciendo mal?

+0

¿Qué significa 'var_dump ($ fila [ 'publicado']); 'show? ¿Quizás necesites llamar 'strtotime()' en '$ row ['posting']' primero? – drew010

+0

Simplemente llama a la fila de marca de tiempo, esta es la primera vez que juego con la opción de marca de tiempo, por lo general, simplemente lo configuro en varchar y lo actualizo con la fecha, supongo que necesito agregar más entonces? –

+0

El segundo parámetro para 'date()' debe ser una marca de tiempo unix, por lo que si los datos en la columna 'posted' no son una marca de tiempo, primero debe convertirlos a uno. Supongo que está en formato 'aaaa-mm-dd hh: mm: ss', lo que significa que primero tiene que usar' strtotime'. – drew010

Respuesta

15

Esto significa que el segundo parámetro para date() espera número entero, así que primero convierta $row['posted'] en la marca de tiempo.

Trate

$posted = date('d/m/Y H:i:s', strtotime($row['posted'])); 
+0

Gracias, marcaré como respuesta cuando pueda (5 minutos de tiempo de espera). –

Cuestiones relacionadas