TransWikia.com

Mostrar AM/PM y ordenar fecha en tabla

Stack Overflow en español Asked by JJ. RR on January 4, 2022

Estoy haciendo un registro y tratando de mostrar la fecha am/pm en una tabla PHP, pero no se muestra como se espera en el orden 24/07/2020: 03:13 PM sino como está en la base de dato 2020-07-24 15:13:03

Insertar en base de datos

$fecha = date("j/m/Y: g:i A");
    
$sql = "INSERT INTO tabla_registro (fecha) VALUES(now())";
$resultado = $mysqli->query($sql);
    
if($resultado){
   echo "Registro Guardado";
} else {
   echo "Error al Registrar";
}

Código HTML

<table border="1">
   <h2>TABLA DE REGISTRO</h2>
   <thead>
      <tr>
         <th>Fecha y Hora</th>
                
      </tr>
   </thead>
    
   <tbody>
                
      <tr>
         <td><?php echo $row['fecha']; ?></td>
      </tr>
   </tbody>
</table>

EN LA BASE DE DATO ESTOY USANDO EL ( timestamp )

One Answer

Como bien dice @JosueArriola, puedes seleccionar la fecha ya formateada, pero esto sólo sería factible si quieres mostrar la fecha y la hora seguidas.

Una posibilidad más flexible sería crear un objeto DateTime a partir del dato que recibes en la consulta (sin formatear, tal cual) y luego usar format() para mostrar los datos de la manera que quieras. La ventaja en esto es que si por ejemplo necesitas mostrar la fecha por un lado y la hora por otro, usarías el mismo objeto. O, si tienes que hacer cálculos en base a la fecha, ya que DateTime() está dotada de una serie de métodos bastante útiles para trabajar con fechas, intervalos, períodos, etc.

Por ejemplo:

#Creamos el objeto
$mDate=new DateTime($row['fecha']);
#Ahora $mDate puede ser usado con format en cualquier contexto.

  <tr>
     <td><?php echo $mDate->format("j/m/Y  g:i A"); ?></td>
  </tr>

Imaginemos que necesitas dos celdas, una con la fecha y otra con la hora, usarías siempre el mismo objeto, aplicando dos format diferentes:

  <tr>
     <td><?php echo $mDate->format("j/m/Y"); ?></td>
     <td><?php echo $mDate->format("g:i A"); ?></td>
  </tr>

Como comprenderás, es una gran ventaja trabajar con objetos.

Answered by A. Cedano on January 4, 2022

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP