Próbuję uzyskać plik xml z curl z adresu url. Chodzi o to, że plik jest generowany na żądanie za pośrednictwem skryptu, który zajmuje do 80-100 sekund, a więc mój curl spada z błędem limitu czasu.Limit czasu zwijania podczas pobierania xml
url wygląda mniej więcej tak:
https://domain/mancgi/report?params&out=xml
Próbowałem ustawić CURLOPT_TIMEOUT
i CURLOPT_CONNECTTIMEOUT
, a także set_time_limit()
dla samego skryptu (który pracuje w porządku), ale nic się nie zmieniło - wciąż limit czasu.
Curl kod wygląda następująco:
set_time_limit(1000);
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_CONNECTTIMEOUT, 0);
curl_setopt($curl, CURLOPT_TIMEOUT, 300);
$xml = curl_exec($curl);
Ktoś ma jakieś pomysły?
Musisz potrzeba zwiększenia limitu czasu wykonywania skryptu od ustawień serwera. –
Jakiego limitu czasu dostaniesz i skąd to wiesz? Podaj szczegóły proszę – Ranty
Czas wykonania jest nadpisany przez set_time_limit() zgodnie z phpinfo(), ale nawet jeśli nie jest - domyślnie ustawiony jest na 180 sekund, co samo w sobie wystarcza. – user976258