Ver Mensaje Individual
  #10 (permalink)  
Antiguo 29/12/2009, 09:36
El-FeNiX
 
Fecha de Ingreso: enero-2008
Mensajes: 381
Antigüedad: 17 años, 1 mes
Puntos: 19
Respuesta: Detectar horario de verano

Ya lo he terminado para que funcione perfectamente siempre. Lo dejo aqui por si alguien le interesa.


Código PHP:
function getTimestamp($forMySQL) {
    
date_default_timezone_set('UTC');
    
$year date("Y");
    
$ahora =strtotime(date("d-m-Y"));  
    
$inicio_invierno strtotime("last Sunday April $year");
    
$fin_invierno strtotime("last Sunday November $year");
    if (
$ahora $inicio_invierno && $ahora <= $fin_invierno$num 2;
    else 
$num 1;
    if (
$forMySQL)    return "DATE_ADD( UTC_TIMESTAMP( ) , INTERVAL $num HOUR )";
    else return 
strtotime("+$num hours now");

Es para españa y otros paises proximos, para latinoamerica hay que ajustar la variable $num para cada zona...

Usos:

Código PHP:
//Mostrar la hora
$formato "d/m/Y H:i";
echo 
date($formatogetTimesptamp(false));

//Guardar hora en base de datos
$time getTimestamp(true);
$query "INSERT INTO users(nick,password,date) VALUES"
                
."('$nick', '$pass','$agent',$time)"

Saludos.