Como agrego fecha local argentina php date?

Estoy utilizando el código "date(Y-m-d) para que traiga la fecha de hoy.. Lo que sucede es que no me trae la fecha del dia de buenos aires.. Entiendo que es algo de la zona local pero no se como solucionar lo..

3 Respuestas

Respuesta
2

Debes utilizar: DateTimeZone

Date_default_timezone_set — Establece la zona horaria predeterminada usada por todas las funciones de fecha/hora en un script

Ejemplo: Obtener la zona horaria por defecto

¿
<?php
date_default_timezone_set('America/Argentina/Buenos_Aires');
$script_tz = date_default_timezone_get();
if (strcmp($script_tz, ini_get('date.timezone'))){
    echo 'La zona horaria del script difiere de la zona horaria de la configuracion ini.';
} else {
    echo 'La zona horaria del script y la zona horaria de la configuración ini coinciden.';
}
?>

normalmente lo hago así:

@$fecha = date("Y-m-d H:i:s",time());
$date = new DateTime($fecha, new DateTimeZone('America/Argentina/Buenos_Aires'));
date_default_timezone_set('America/Argentina/Buenos_Aires');
$zonahoraria = date_default_timezone_get();
@$fecha=date("Y-m-d H:i:s",time());
// nota: debes colocar @ antes de la variable para "Ocultar" el error que te marca.

También puede hacer los ajustes en php.ini o en httpd.conf

para tal efecto puedes consultar: http://php.net/manual/es/configuration.changes.modes.php 

******************************************

Conseguir todas las zonas horarias por país utilizando GEOIP de PHP con el siguiente script:

<?php
$timezones = array();
foreach (range('A', 'Z') as $i) {
    foreach (range('A', 'Z') as $j) {
        $country = $i . $j;
        foreach (range('A', 'Z') as $k) {
            foreach (range('A', 'Z') as $l) {
                $region = $k . $l;
                if ($timezone = geoip_time_zone_by_country_and_region($country, $region)) {
                    $timezones[$country][$timezone] = true;
                }
            }
        }
        foreach (range(0, 99) as $m) {
            if ($timezone = geoip_time_zone_by_country_and_region($country, sprintf('%02d', $m))) {
                $timezones[$country][$timezone] = true;
            }
        }
    }
}
var_dump($timezones);
?>
Respuesta
1

Para Mexico se agrega esta linea

¿

<?php

date_default_timezone_set('America/Mexico_city');

Y en esta liga esta la lista de zonas horarias admitidas.. Espero que te sea de utilidad

http://php.net/manual/es/timezones.america.php 

Que pases una buena noche

Respuesta
1

Generalmente utilizo algo como esto.

hoy=strftime( "%Y-%m-%d", time() );
//echo '$hoy';
date_default_timezone_set('America/Bogota');

en tu caso date_default_timezone_set('America/Argentina/Cordoba');

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas