2010-08-11 4 views
0

current.php는 브라우저에서 열리는 페이지입니다.PHP 파일을여시겠습니까?

other_1.phpother_2.php은 실행할 페이지입니다. 이 두 페이지는 큰 일을하고 천천히 작동합니다.

current.php을 열 때 두 페이지를 모두 어떻게 호출 할 수 있습니까?

current.php 그냥 열어서 죽으면 아무것도 얻지 않고 열려면 명령을 보내십시오.

현재 페이지에 다른 페이지가 포함되어 있으면 많은 메모리를 사용하며 호스팅 계정에서 실행 가능한 최대 시간부터 이동합니다.

모든 페이지가 동일한 폴더에 있습니다.

아이디어가 있으십니까?

감사합니다.

+1

이들 파일 중 하나가 세션을 사용하는 경우, 장기간 작업을하기 전에 두 파일 모두에서'session_write_close() '를주의하십시오. PHP의 표준 파일 기반 세션은'session_start()'에 세션 파일을 잠그고 세션을 닫거나 스크립트가 끝날 때까지 세션 파일을 해제하지 않습니다. 즉, 첫 번째 페이지 만 실행되고 다른 페이지는 첫 번째 종료/완료 될 때까지 대기합니다. –

답변

1

이 하나를 시도 할 수 있습니다 다음 $에서

function execInBackground($cmd) { 
    if (substr(php_uname(), 0, 7) == "Windows"){ 
     pclose(popen("start /B ". $cmd, "r")); 
    } 
    else { 
     exec($cmd . " > /dev/null &"); 
    } 
} 

당신이 PHP의 경로를 통과하고 CLI에서와 같이 명령을 사용할 수있는 것보다 cmd를.

+0

이 코드는 어떤 기능을합니까? – James

+0

bash 또는 cmd에 무언가를 입력 할 때와 같이 명령 (또는 프로세스)을 실행하지만 보안 제한 때문에 웹 서버에서이 기능을 사용하지 못하게 할 수 있습니다. – Emiswelt

+0

유닉스 서버에 대한 ok? – James

0

당신은

<?php 

include("other_1.php"); 

?> 

을 사용할 수 있으며, 말 등 또 다른 other_2.php을 위해 포함 추가 other_1.php. 내가 그 질문을 잘못 이해했다면 알려주십시오.

+0

> 현재 페이지에 다른 페이지가 포함되어 있으면 많은 메모리를 사용하고 호스팅 계정에서 사용할 수있는 최대 실행 시간에서 벗어납니다. – James