제 서버에서 10 초입니다. 그게 내가하려는 일로는 충분하지 않습니다. 그것은 웹 호스트도 사용할 수 없게되었습니다.max_execution_time 무시?
실행 시간이 일정 기간이 지난 후 별도의 PHP 페이지를 실행하면 같은 시간에 계산됩니까? 아니면 해당 페이지에서 다시 시작합니까?
다른 방법이 있습니까?
제 서버에서 10 초입니다. 그게 내가하려는 일로는 충분하지 않습니다. 그것은 웹 호스트도 사용할 수 없게되었습니다.max_execution_time 무시?
실행 시간이 일정 기간이 지난 후 별도의 PHP 페이지를 실행하면 같은 시간에 계산됩니까? 아니면 해당 페이지에서 다시 시작합니까?
다른 방법이 있습니까?
쉬운 방법과 같이 제한 시간을 설정하는 :
하고 set_time_limit (0);
는
set_time_limit() 그러나
이 기능은 PHP가 안전 모드에서 실행되면 아무 효과가 없습니다보십시오. 당신이 더 많은 파일을 포함 할 때, 재설정하지 않습니다
주위 방법은 없습니다 php.ini의 카운터
을 시간 제한을 안전 모드를 끄거나 변경 이외의 다른 해결 방법은 없습니다 - 귀하의 웹 호스트가 서버를 적절히 구성했기 때문입니다.
시간은 모든 스크립트를 나타내며 별도로 표시되지는 않습니다.
가능한 해결 방법은 작은 부분으로 작업을 수행하도록 cron 작업을 설정하는 것입니다. 나는 이것이 아마도 바람직하지 않다는 것에 감사한다.
자바 스크립트를 사용하여 주위를 둘러 볼 수 있습니다. 시간 초과가 만료되기 전에 페이지가 자체 실행을 끝내고 상태를 저장 한 다음 사용자에게 자바 스크립트를 반환하여 클라이언트가 새로운 제한 시간으로 처리를 계속하는 새 페이지를 요청하도록합니다.
권장하지 않습니다.
실행 시간이 일정 기간이 지난 후에도 별도의 PHP 페이지가 실행되는 경우 동일한 시간으로 계산합니까, 아니면 해당 페이지에서 다시 시작합니까? 당신은 예를 들어
file_get_contents('http://example.com/mypage.php');
로, HTTP 요청을 (아닌 포함)를 사용하여 별도의 PHP 페이지를 호출하는 경우
, 그것은 동시에 대한을 계산하지 않습니다. 그 페이지에서 다시 시작됩니다.
나 자신보다 다른
,set_time_limit
을 시도하고 작업을 수행하기 위해 "매 순간"
cronjob를 일정을 고려 ... 몇 년 전이 트릭을 사용했다.
@Borealid가 이전에 저장 한 상태를 사용하여 스크립트를 계속 실행하기 위해 javascript 및 ajax 요청을 사용할 수 있다고 말했습니다. 이를 위해 serialize()를 사용하여 세션에서 당신이나 당신이 가질 수있는 객체를 저장하고, 유용하다고 생각되는 카운터 나 다른 도구를 사용하여 진행 상황을 추적 할 수 있습니다. 나는 몇 년 전에 비슷한 기술을 사용했다. 실제로 모든 단계를 마치면 페이지를 새로 고쳤다. 모든 출력을 볼 수있게했다. 마치 끝낼 때처럼 출력이 나오기까지 며칠이 걸렸을 것이다. 당신도 그것을 시도 할 수 있습니다. 최대 실행 시간이 각 요청에 적용됩니다.
맥스 실행 시간 주위