Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Ola galera, to criando um sistema de controle de serviços de uma empresa, e o dono me pediu que fizesse alguns widget, um com o tempo e o outro com fuco horario de algumas cidades onde a empresa tem filiais.
O problema é que não consigo achar uma forma te fazer isso funcionar, pela lógica do tentando assim
$fuso_brasilia = date_default_timezone_set("Brazil/East");//fuso brasilia
$brasilia = $fuso_brasilia('d-m-Y, H:i:s '); // data em brasilia
echo"$brasilia";
Mas essa lógina não funcionou muito bem da o seguinte erro:
SCREAM: Error suppression ignored for ( ! ) Fatal error: Function name must be a string in C:\wamp\www\layout_curri\admin\index.php on line 43
Alguem sabe como posso fazer isso?
Continua com erro
Notice: Undefined variable: fuso_brasilia in C:\wamp\www\layout_curri\admin\index.php on line 43 Call Stack # Time Memory Function Location 1 0.0021 701552 {main}( ) ..\index.php:0
( ! ) Fatal error: Function name must be a string in C:\wamp\www\layout_curri\admin\index.php on line 43 Call Stack # Time Memory Function Location 1 0.0021 701552 {main}( ) ..\index.php:0
A ideia é fazer os horário em forma de Widget como na imagem
/applications/core/interface/imageproxy/imageproxy.php?img=http://lanner.com.br/widtg.jpg&key=defd3cf9075eae1764dac1f49150eae2d49f6c7853b188a39f1bc5de5698eb83" alt="widtg.jpg" />
>
Continua com erro
Notice: Undefined variable: fuso_brasilia in C:\wamp\www\layout_curri\admin\index.php on line 43 Call Stack # Time Memory Function Location 1 0.0021 701552 {main}( ) ..\index.php:0
( ! ) Fatal error: Function name must be a string in C:\wamp\www\layout_curri\admin\index.php on line 43 Call Stack # Time Memory Function Location 1 0.0021 701552 {main}( )..\index.php:0
A ideia é fazer os horário em forma de Widget como na imagem
/applications/core/interface/imageproxy/imageproxy.php?img=http://lanner.com.br/widtg.jpg&key=defd3cf9075eae1764dac1f49150eae2d49f6c7853b188a39f1bc5de5698eb83" alt="widtg.jpg" />
falha minha desculpe
date_default_timezone_set("America/Araguaina");//fuso brasilia
$brasilia = date('d-m-Y, H:i:s '); // data em brasilia
echo"$brasilia";
então como falei você pode usar em metodo de include seria praticamente a mesma coisa em casa include um time diferente ....
da uma olhada tbm nos tipos de timezone ...
Resolvi da seguinte forma,
<? date_default_timezone_set("America/Chicago");
echo "<BR/>Hora atual: ", date("H:i:s"); ?>
Lista de fusos:
(1, 'Pacific/Kwajalein', '(GMT -12:00) Eniwetok, Kwajalein'),(2, 'Pacific/Samoa', '(GMT -11:00) Midway Island, Samoa'),(3, 'Pacific/Honolulu', '(GMT -10:00) Hawaii'),(4, 'America/Anchorage', '(GMT -9:00) Alaska'),(5, 'America/Los_Angeles', '(GMT -8:00) Pacific Time (US & Canada) Los Angeles, Seattle'),(6, 'America/Denver', '(GMT -7:00) Mountain Time (US & Canada) Denver'),(7, 'America/Chicago', '(GMT -6:00) Central Time (US & Canada), Chicago, Mexico City'),(8, 'America/New_York', '(GMT -5:00) Eastern Time (US & Canada), New York, Bogota, Lima'),(9, 'Atlantic/Bermuda', '(GMT -4:00) Atlantic Time (Canada), Caracas, La Paz'),(10, 'Canada/Newfoundland', '(GMT -3:30) Newfoundland'),(11, 'Brazil/East', '(GMT -3:00) Brazil, Buenos Aires, Georgetown'),(12, 'Atlantic/Azores', '(GMT -2:00) Mid-Atlantic'),(13, 'Atlantic/Cape_Verde', '(GMT -1:00 hour) Azores, Cape Verde Islands'),(14, 'Europe/London', '(GMT) Western Europe Time, London, Lisbon, Casablanca'),(15, 'Europe/Brussels', '(GMT +1:00 hour) Brussels, Copenhagen, Madrid, Paris'),(16, 'Europe/Helsinki', '(GMT +2:00) Kaliningrad, South Africa'),(17, 'Asia/Baghdad', '(GMT +3:00) Baghdad, Riyadh, Moscow, St. Petersburg'),(18, 'Asia/Tehran', '(GMT +3:30) Tehran'),(19, 'Asia/Baku', '(GMT +4:00) Abu Dhabi, Muscat, Baku, Tbilisi'),(20, 'Asia/Kabul', '(GMT +4:30) Kabul'),(21, 'Asia/Karachi', '(GMT +5:00) Ekaterinburg, Islamabad, Karachi, Tashkent'),(22, 'Asia/Calcutta', '(GMT +5:30) Bombay, Calcutta, Madras, New Delhi'),(23, 'Asia/Dhaka', '(GMT +6:00) Almaty, Dhaka, Colombo'),(24, 'Asia/Bangkok', '(GMT +7:00) Bangkok, Hanoi, Jakarta'),(25, 'Asia/Hong_Kong', '(GMT +8:00) Beijing, Perth, Singapore, Hong Kong'),(26, 'Asia/Tokyo', '(GMT +9:00) Tokyo, Seoul, Osaka, Sapporo, Yakutsk'),(27, 'Australia/Adelaide', '(GMT +9:30) Adelaide, Darwin'),(28, 'Pacific/Guam', '(GMT +10:00) Eastern Australia, Guam, Vladivostok'),(29, 'Asia/Magadan', '(GMT +11:00) Magadan, Solomon Islands, New Caledonia'),(30, 'Pacific/Fiji', '(GMT +12:00) Auckland, Wellington, Fiji, Kamchatka');
Quase isso, Keven. Pelo visto ele quer setar o timezone dinâmicamente e não apenas mostrar qual a data/hora atuais.
Primeiro de tudo vejamos o erro:
( ! ) Fatal error: Function name must be a string in C:\wamp\www\layout_curri\admin\index.php on line 43 Call Stack # Time Memory Function Location 1 0.0021 701552 {main}( )..\index.php:0
O nome da função deve ser uma string...
Isso só pode significar que $fuso_brasilia não é uma string. Veja que date_default_timezone_set() ao ser usada, retorna uma valor booleano, TRUE se tudo der certo e FALSE se o timezone especificado for inválido.
E como nesse caso, felizmente, nenhum cast idiota está sendo desnecessária e automaticamente feito, um booleano não é uma string e, por isso, você não pode chamá-lo como uma função através de uma variável.
O que você procura fazer é algo como isso:
$timezones = array(
'brasilia' => 'Brazil/East',
'acre' => 'Timezone/Non-ecziste', // LOL
'default' => 'America/Sao_Paulo'
);
$timezone = ( array_key_exists( $someVar, $timezones ) ?
$timezones[ $someVar ] : $timezones['default'] )
date_default_timezone_set( $timezone );
Onde $someVar viria com um dos valores possíveis nos índices desse array. Ela não está sendo diretamente utilizada pois, caso o valor recebido não corresponda à nenhuma entrada, o timezone padrão seria utilizado.
[EDIT]
Párem de escrever criaturas :lol:
[EDIT 2]
Quanto a lista de timezones, é mais seguro usar DateTimeZone::listIdentifiers() do que uma lista manual
>
Ola galera, to criando um sistema de controle de serviços de uma empresa, e o dono me pediu que fizesse alguns widget, um com o tempo e o outro com fuco horario de algumas cidades onde a empresa tem filiais.
O problema é que não consigo achar uma forma te fazer isso funcionar, pela lógica do tentando assim
$fuso_brasilia = date_default_timezone_set("Brazil/East");//fuso brasilia
$brasilia = $fuso_brasilia('d-m-Y, H:i:s '); // data em brasilia
echo"$brasilia";
Mas essa lógina não funcionou muito bem da o seguinte erro:
SCREAM: Error suppression ignored for( ! ) Fatal error: Function name must be a string in C:\wamp\www\layout_curri\admin\index.php on line 43
Alguem sabe como posso fazer isso?
tenta assim
date_default_timezone_set("Brazil/East");//fuso brasilia
$brasilia = $fuso_brasilia('d-m-Y, H:i:s '); // data em brasilia
echo"$brasilia";
o date_default_timezone_set roda direito ... você pode criar varioas arquivos com times zones diferentes e incluir de acordo nivel de login nao sei se teu sistema tem isso exemplo
funcionario X nome,email,senha,ESTADO .. ai tu identifica o estado e da um include com timezone de acordo ...