php: время из внешнего сервиса
Нужно было, когда серверное время не правильное, и поменять его нет доступа..
В примере для парсинга используется библиотека simple_html_dom, парсится сайт http://24timezones.com/
Пример для московского времени:
require $_SERVER['DOCUMENT_ROOT'].'/lib/simple_html_dom.php'; $data_msk=file_get_html('http://24timezones.com/ru_vremia/moscow_mestnoe_vremia.php'); if ($data_msk!='') { $time_msk_b=$data_msk->find('#currentTime',0); $time_msk=$time_msk_b->plaintext; if ($time_msk!='') { $time_msk=substr($time_msk,0,strpos($time_msk,',')); $arr_msk_time=explode(':',$time_msk); } $data_msk->clear(); } unset($data_msk); echo $arr_msk_time[0].":".$arr_msk_time[1];
Время для разных городов, парсится сайт http://www.timeanddate.com/worldclock/
$data_all=file_get_html('http://www.timeanddate.com/worldclock/'); if ($data_all!='') { //Kyiv $time_kyiv_b=$data_all->find('#p76',0); $time_kyiv=$time_kyiv_b->plaintext; if ($time_kyiv!='') { $time_kyiv=substr($time_kyiv,strrpos($time_kyiv,' '),strlen($time_kyiv)); $arr_kyiv_time=explode(':',$time_kyiv); } //Moscow $time_msk_b=$data_all->find('#p95',0); $time_msk=$time_msk_b->plaintext; if ($time_msk!='') { $time_msk=substr($time_msk,strrpos($time_msk,' '),strlen($time_msk)); $arr_msk_time=explode(':',$time_msk); } //Brussels $time_brus_b=$data_all->find('#p27',0); $time_brus=$time_brus_b->plaintext; if ($time_brus!='') { $time_brus=substr($time_brus,strrpos($time_brus,' '),strlen($time_brus)); $arr_brus_time=explode(':',$time_brus); } $data_all->clear(); } unset($data_all);