¿Cómo puedo convertir esta cadena de fecha en PHP?

  • RedBMedia
  • Proficient
  • Proficient
  • Avatar de Usuario
  • Registrado: May 01, 2007
  • Mensajes: 315
  • Status: Offline

Nota Julio 20th, 2010, 7:37 am

Por lo tanto, estoy trabajando con una API que los resultados de esta fecha: 2010-07-20T13: 57:11 0000 Sin embargo, mi aplicación requiere que las fechas de estar en formato RFC822. Por eso estoy tratando de convertir de este modo...

PHP Código: [ Select ]
<?php $date = date(DATE_RFC822, $date_string); ?>


Sin embargo, estas salidas de la fecha como: Wed, 31 Dec 69 16:33:30 -0800 Lo cual por supuesto no es correcto en absoluto. He intentado usar str_replace () para eliminar la T, pero eso no cambia nada. Cualquier ayuda sería muy apreciada!

[Mensaje editado para la ortografía]
Joe Hall
  • Anonymous
  • Bot
  • No Avatar
  • Registrado: 25 Feb 2008
  • Mensajes: ?
  • Loc: Ozzuland
  • Status: Online

Nota Julio 20th, 2010, 7:37 am

  • righteous_trespasser
  • Scuffle
  • Genius
  • Avatar de Usuario
  • Registrado: Mar 12, 2007
  • Mensajes: 6228
  • Loc: South-Africa
  • Status: Offline

Nota Julio 21st, 2010, 12:13 am

PHP Código: [ Select ]
<?php echo date("Y-m-d G:i:s O",strtotime($date_string)); ?>


No puedo poner la letra "T" en allí que se utiliza para otra cosa (abreviatura Timezone)
Let's leave all our *plum* where it is and go live in the jungle ...
  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Registrado: Feb 10, 2004
  • Mensajes: 13455
  • Loc: Florida
  • Status: Offline

Nota Julio 21st, 2010, 1:28 am

Creo que el problema se reduce a la fecha argumento de las funciones de segundo esperando una marca de tiempo UNIX como un entero, y la variable $ date_string es una cadena en el formato que intenta convertir de.

En cuanto a sus dos puestos de chicos, pensando Im seguir utilizando el DATE_RFC822 predefinidos fecha constante para el primer argumento, e ir con la solución de strtotime TRs para conseguir el segundo argumento convertido en una marca de tiempo UNIX para la fecha que trabajar.

Me pregunto lo difícil que sería para parchar PHP para que la función de fecha acepta tipos de datos mixtos para el segundo argumento. (No como una solución a este caso, pero en general) :scratchhead:
Strong with this one, the sudo is.
  • PolishHurricane
  • Mastermind
  • Mastermind
  • Avatar de Usuario
  • Registrado: Feb 17, 2005
  • Mensajes: 1585
  • Status: Offline

Nota Julio 21st, 2010, 4:31 pm

PHP Código: [ Select ]
<?php echo date(DATE_RFC822,strtotime($date_string)); ?>


Usted prolly podía salirse con la RFC 2822 sin embargo, se supone que técnicamente obsoleto RFC 822 ...

PHP Código: [ Select ]
<?php echo date("r",strtotime($date_string)); ?>



righteous_trespasser escribió:
No puedo poner la letra "T" en allí que se utiliza para otra cosa (abreviatura Timezone)


Si quieres poner un carácter reservado allí, usted puede apenas barra invertida como éste...

PHP Código: [ Select ]
echo date("Y-m-d G:i:s","2010-05-06");


PHP que debe convertir a:
PHP Código: [ Select ]
echo date("Y-m-d G:i:s",strtotime("2010-05-06"));
Let's leave all our *plum* where it is and go live in the jungle ...
  • joebert
  • Sledgehammer
  • Genius
  • No Avatar
  • Registrado: Feb 10, 2004
  • Mensajes: 13455
  • Loc: Florida
  • Status: Offline

Nota Julio 22nd, 2010, 5:16 am

Miré a la fecha funciones de PHP fuente. La función date () en sí es un contenedor a una función php_date.

No parece como tiene que ser también mucho de un molestia de modificar esa envoltura por lo que acepta $ mixta para el segundo argumento en lugar de un entero. Luego se puede detectar si su una cadena o un entero. Si es un número entero a través de pasar normalmente. Si su una cadena, recuperar un número entero a través de la función strtotime detrás de las escenas.
Strong with this one, the sudo is.
  • PolishHurricane
  • Mastermind
  • Mastermind
  • Avatar de Usuario
  • Registrado: Feb 17, 2005
  • Mensajes: 1585
  • Status: Offline

Nota Julio 22nd, 2010, 10:02 am

Oh, yo entiendo lo que quieres decir ahora.
There's no place like 127.0.0.1, badass part is now it's ::1

Publicar Información

  • Total de mensajes en este tema: 8 mensajes
  • Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 126 invitados
  • No puede abrir nuevos temas en este Foro
  • No puede responder a temas en este Foro
  • No puede editar sus mensajes en este Foro
  • No puede borrar sus mensajes en este Foro
  • No puede enviar adjuntos en este Foro
 
 

© 2011 Unmelted, LLC. Ozzu® es una marca registrada de Unmelted, LLC