sql >> Base de Datos >  >> RDS >> Mysql

Necesito cambiar el formato de fecha usando php

Lo primero es lo primero

  echo "<td><strong> ("d/m/y",". $row['date'] .")</strong></td>";

Esta línea se ve mal; Sospecho que debería leer algo como

  echo "<td><strong>" . date( "d/m/y", $row['date'] ) . "</strong></td>";

Tenga en cuenta la llamada de función que falta y los operadores de concatenación. Por cierto, si bien esto es sintácticamente correcto (hasta donde puedo ver), es posible que no haga lo que está buscando, dependiendo de qué $row['date'] en realidad contiene:debe ser una marca de tiempo de Unix para date() para asimilarlo correctamente.

Para obtener la fecha como una marca de tiempo de Unix, puede usar la función MySQL UNIX_TIMESTAMP() al seleccionar la fecha, p. ej.

SELECT *, UNIX_TIMESTAMP(date) AS date_ts FROM ...

A continuación, puede acceder a $row['date_ts'] como de costumbre, y páselo a date() Función para formatear. Alternativamente, puede usar algo como strtotime() para analizar el valor actual que se devuelve para obtener una marca de tiempo a partir de eso.

Otra alternativa es hacer que MySQL formatee la fecha en su nombre, usando su DATE_FORMAT() función; de nuevo, puede acceder a este valor devuelto por la consulta e imprimirlo.