Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Fechas

Estas en el tema de Fechas en el foro de PHP en Foros del Web. Buenas, tengo una duda, como puedo obtener una fecha formateada como, domingo 1 de Enero del 2016. Extraigo de un Json un array sin año ...
  #1 (permalink)  
Antiguo 01/11/2016, 09:10
 
Fecha de Ingreso: enero-2008
Ubicación: Valencia
Mensajes: 65
Antigüedad: 16 años, 3 meses
Puntos: 2
Fechas

Buenas, tengo una duda, como puedo obtener una fecha formateada como, domingo 1 de Enero del 2016.

Extraigo de un Json un array sin año y le agrego el año.

Código HTML:
$array = json_decode($data);
echo $array[7]->fecha.'/2016'

Resultado
09/10/2016
Le cambio las barras por guiones

Código HTML:
$guiones = str_replace(array('/'),'-',$array[7]->fecha.'/2016')

Resultado
09-10-2016


Y para agregar Lunes o Martes o Miercoles, o lo que sea

Código HTML:
$fecha = date_format($guiones, '%A d-m-Y');  

echo $fecha; 
y este es el error

Warning: date_format() expects parameter 1 to be DateTimeInterface

¿Alguna solucion?
Gracias

Última edición por Ramonromero; 01/11/2016 a las 10:13
  #2 (permalink)  
Antiguo 01/11/2016, 13:28
Avatar de AngelKrak  
Fecha de Ingreso: noviembre-2014
Mensajes: 917
Antigüedad: 9 años, 4 meses
Puntos: 91
Respuesta: Fechas

puedes hacerlo mediante arrays todo y la funciona date()
  #3 (permalink)  
Antiguo 01/11/2016, 14:35
 
Fecha de Ingreso: enero-2008
Ubicación: Valencia
Mensajes: 65
Antigüedad: 16 años, 3 meses
Puntos: 2
Respuesta: Fechas

Cita:
Iniciado por AngelKrak Ver Mensaje
puedes hacerlo mediante arrays todo y la funciona date()
Muchas gracias, he ahorrado la mitad de codigo, Supongo que te refieres a:

Código HTML:
$array = json_decode($data);     

setlocale(LC_ALL,"es_ES");
$date = DateTime::createFromFormat("d/m/Y", $array[6]->fecha.'/2016');
echo strftime("%A %d de %B del %Y",$date->getTimestamp())

Respuesta
domingo 30 de octubre del 2016
  #4 (permalink)  
Antiguo 25/11/2016, 15:53
 
Fecha de Ingreso: enero-2008
Ubicación: Valencia
Mensajes: 65
Antigüedad: 16 años, 3 meses
Puntos: 2
Respuesta: Fechas

me adelante en la respuesta, solo me muestra una fecha

digamos que este es mi json, que tengo en una url.

Código:
[
  {
    "nomLocal": "Madrid",
    "resulLocal": "0",
    "nomVisitante": "Sevilla",
    "resulVisitante": "0",
    "fecha": "24/11",
    "hora": "15:30"
  },
  {
    "nomLocal": "Barcelona",
    "resulLocal": "0",
    "nomVisitante": "Valencia",
    "resulVisitante": "0",
    "fecha": "21/11",
    "hora": "16:00"
  }]


Código:
$array = json_decode($data);     

setlocale(LC_ALL,"es_ES");
$date0 = DateTime::createFromFormat("d/m/Y", $array[0]->fecha.'/2016');
$date1 = DateTime::createFromFormat("d/m/Y", $array[1]->fecha.'/2016');

$date100 = str_replace(array($array[0]->fecha),strftime("%a %d de %B",$date0->getTimestamp()),$data);
$date101 = str_replace(array($array[1]->fecha),strftime("%a %d de %B",$date1->getTimestamp()),$data);

$date_final = $date100 .$date101;


echo $date_final;

Etiquetas: Ninguno
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 19:57.