Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] cambiar formato de fecha

Estas en el tema de cambiar formato de fecha en el foro de PHP en Foros del Web. Hoal, tengo un campo en mysql grabado en una celda con el formato: 2014-06-12 dicho campo lo utilizo posteriormente, pero lo tengo que cambiar al ...
  #1 (permalink)  
Antiguo 15/06/2014, 21:50
 
Fecha de Ingreso: septiembre-2012
Ubicación: montevideo
Mensajes: 131
Antigüedad: 11 años, 7 meses
Puntos: 0
cambiar formato de fecha

Hoal, tengo un campo en mysql grabado en una celda con el formato:

2014-06-12

dicho campo lo utilizo posteriormente, pero lo tengo que cambiar al siguiente formato:

12-06-2014

podria ser con date_format(), pero dentro de un foreach no me funciona:



Código PHP:
$gpxsimplexml_load_file($noma); 

foreach(
$gpx->wpt as $wpt) {
    
$lat   $wpt['lon']; 
    
$lon   $wpt['lat']; 
    
$ele   $wpt->ele

[
COLOR="DarkOrange"]
    
$feya $wpt->{'time'}; 
    
$fecha date_format($feya,'d-m-y');
[/
COLOR]


    
$name  $wpt->name;
    
$cmt   $wpt->cmt;
    
$query "INSERT INTO $usertable (fecha,lat,lon,ele,name,cmt,eq) VALUES ('$fecha','$lat','$lon','$ele','$name','$cmt','$nome')"
agradezco ideas.
  #2 (permalink)  
Antiguo 15/06/2014, 22:05
Avatar de Italico76  
Fecha de Ingreso: abril-2007
Mensajes: 3.303
Antigüedad: 17 años, 1 mes
Puntos: 292
Respuesta: cambiar formato de fecha

Pues a mi si me funciona:

Código PHP:
Ver original
  1. $date = (new DateTime('2014-06-12'))->format('m-d-Y');
__________________
Salu2!
  #3 (permalink)  
Antiguo 16/06/2014, 08:00
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 10 meses
Puntos: 379
Respuesta: cambiar formato de fecha

Desde mysql puedes usar la función DATE_FORMAT.
Código PHP:
Ver original
  1. $feya = $wpt->{'time'};
  2. $fecha = date_format($feya,'d-m-y');
Esto no te funciona por que $feya es un cadena que representa un formato de fecha, necesitas convertirlo para que puedas usarlo y cambiarle el formato, para eso necesitas usar el manual hasta que entiendas como usar la función date_format: http://us2.php.net/manual/es/refs.calendar.php
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #4 (permalink)  
Antiguo 16/06/2014, 09:37
 
Fecha de Ingreso: septiembre-2012
Ubicación: montevideo
Mensajes: 131
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: cambiar formato de fecha

gracias por sus respuestas, he probado y leido pero no pude encontrar la solucion por este camino, el problema creo que es porque en mysql (de donde traigo el valor) el campo es varchar y no lo puedo cambiar. loque hago es tomar los primeros caracteres del campo EJ: 2014-06-12
y los tengo que colocar en una archivo pero con el formato EJ: 12-06-2014, las funciones que mencionaron no funcionaron, estoy probando con alguna expresion regular, igulamente agradezco ideas.saludos
  #5 (permalink)  
Antiguo 16/06/2014, 10:01
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 10 años, 10 meses
Puntos: 379
Respuesta: cambiar formato de fecha

Cita:
Iniciado por jegggf Ver Mensaje
gracias por sus respuestas, he probado y leido pero no pude encontrar la solucion por este camino, el problema creo que es porque en mysql (de donde traigo el valor) el campo es varchar y no lo puedo cambiar. loque hago es tomar los primeros caracteres del campo EJ: 2014-06-12
y los tengo que colocar en una archivo pero con el formato EJ: 12-06-2014, las funciones que mencionaron no funcionaron, estoy probando con alguna expresion regular, igulamente agradezco ideas.saludos
Que te puedo decir... vas a tener que ir por el camino difícil.
Por cierto las sugerencias de usar las funciones de php para gestionar las fechas y las horas funcionan muy bien, y el manual cuenta con muchos ejemplos. Así que no te desanimes si no puedes con las expresiones vuelve a esta parte del manual: http://www.php.net/manual/en/book.datetime.php eventualmente encontraras aplicación a lo que te recomiendan. Eso si ir por las expresiones reculares debe de ser tu ultima alternativa.
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.
  #6 (permalink)  
Antiguo 16/06/2014, 10:01
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: cambiar formato de fecha

Cita:
en mysql (de donde traigo el valor) el campo es varchar
Ese es uno de los errores catastróficos, habituales en los que se inciian.
De todos modos, si la fecha en MySQL es un VARCHAR, pero están almacenados como "AAAA-MM-DD", nada te impediría cambiar el tipo de dato en ela tabla, o en todo caso aplicarle una funcion de conversión de MySQL.

Código MySQL:
Ver original
  1. SELECT DATE_FORMAT(STR_TO_DATE(fecha, '%Y-%m-%d'), '%d/%m/%Y') fecha
  2. FROM tabla;

Te repito: Mi consejo es que apliques el formato correcto para MySQL, es decir que cambies el tipo de columna de VARCHAR a DATE. Te ahorrarás problemas futuros.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #7 (permalink)  
Antiguo 16/06/2014, 12:11
 
Fecha de Ingreso: septiembre-2012
Ubicación: montevideo
Mensajes: 131
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: cambiar formato de fecha

muchisimas gracias por la ayuda. saludos

Etiquetas: fecha, formato, mysql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 05:22.