Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > PHP
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

 
 
Herramientas Buscar en Tema Desplegado
  #2  
Antiguo 18-03-2009
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.142
Poder: 36
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Lo que pasa es que la función "date()" requiere como segundo parámetro una "marca de tiempo" (un "timestamp") y no le vale con la fecha en el formato en que la guarda MySQL, en este caso. Aquí te dejo un par de métodos de cierta clase "DateUtils", que, tal vez puedas aprovechar:

Código PHP:
  /**
   * Decode a datetime MySQL format into an Array.
   *
   * This method decode a datetime in MySQL format into an
   * Array that contain all Year, Month, Day, Hour, Minutes
   * and Seconds in their fields.
   *
   * @static
   * @access public
   * @param $mysqlDatetime String datetime value in MySQL format
   * @return Array Decoded MySQL datetime
   *
   */
  
public static function DecodeMySQLDateTime($mysqlDatetime){
    return array(
      
'year' => (int)substr($mysqlDatetime04),
      
'month' => (int)substr($mysqlDatetime52),
      
'day' => (int)substr($mysqlDatetime82),
      
'hour' => (int)substr($mysqlDatetime112),
      
'minutes' => (int)substr($mysqlDatetime142),
      
'seconds' => (int)substr($mysqlDatetime172)
    );
  }

  
/**
   * Get the UNIX timestamp representation of a MySQL datetime.
   *
   * This method convert a MySQL date time in the UNIX timestamp.
   *
   * @static
   * @access public
   * @param $mySqlDatetime String MySQL datatime to be converted
   * @return Integer UNIX timestamp representation of MySQL the datatime
   *
   */
  
public static function MySQLDatetimeToTimestamp($mySqlDatetime){
    
$d self::DecodeMySQLDateTime($mySqlDatetime);
    if(
is_array($d)){
      return 
mktime($d['hour'], $d['minutes'], $d['seconds'],
                     
$d['month'], $d['day'], $d['year']);
    }else{
      return 
0;
    }
  } 
Una vez tengas el "timestamp" ya sí puedes usar la función "date()".
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Formato de Numeros y Fechas jcarteagaf Varios 1 08-11-2007 19:03:45
Formato de Fechas luiz_leo Firebird e Interbase 3 27-07-2007 21:06:45
Formato de Fechas comba OOP 1 12-07-2007 19:14:00
formato de fechas SQL Barzaugc SQL 3 26-06-2005 11:54:23
Formato de fechas en FireBird 1.5 defcon1_es Firebird e Interbase 1 02-04-2004 17:02:52


La franja horaria es GMT +2. Ahora son las 13:13:29.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi