2012-11-30 2 views
0

PHP 실행시 시간 초과를 설정하고 싶습니다. 루프를 반복하고 싶기 때문에 내가 설정 한 실행 시간 때문에 예를 들어 5로 자르고 싶습니다.레코드를 반복 할 때 실행 시간 초과 시간을 설정하십시오.

ini_set('max_execution_time',2); 
for ($i=0;$i<10;$i++){ 
    echo time(); 
    echo ' i:'.$i; 
    echo "\n"; 
    echo "\n"; 
} 

은 제한을 부여하고자합니다.

+0

당신은 전에 루프하고 건을 5 초 – vodich

+1

을 만료 할 때 루프를 중단 할 경우 전달 된 시간에 대한 루프 chack 내부 VAR 시간()를 넣을 수 있습니다 - 그 5 초 이상을 절대 루프 . –

+0

http://codepad.org/8iflL06z – Venu

답변

1

전체 PHP 스크립트에 영향을 미칠 것이며,이 발생할 수 있습니다 ini_set('max_execution_time',2);를 사용

Fatal error: Maximum execution time of 2 second exceeded 

할 수 있습니다 간단한 대신 for 루프에 시간 계산을 추가;

$maxTime = 2; // sec ; 
$start = time(); 
echo "<pre>"; 
for($i = 0; $i < 10, (time() - $start) < $maxTime; $i ++) { 
    echo time(); 
    echo ' i:' . $i; 
    echo "\n"; 
    echo "\n"; 
    sleep(1); // slow the script 
} 

당신은 시간에 당신의 루프 전에 타임 스탬프를 취할 수

1354287243 i:0 

1354287244 i:1 
0

출력(). 그리고 forloop에 추가 테스트를하십시오.

$startTime = time(); 
for ($i=0;$i<10 && time() < $startTime + 1000;$i++){ 
    echo time(); 
    echo ' i:'.$i; 
    echo "\n"; 
    echo "\n"; 
} 
관련 문제