2013-08-16 3 views
1

다른 PHP 스크립트 내부에서 스크립트 A.php (실행 중에)을 말하고 싶습니다. B.php 스크립트를 말하십시오. 스크립트 A.php이 시작될 때 어떤 종류의 ID을 데이터베이스에 저장하고 싶습니다. B.php 스크립트가 실행되기 시작하면 데이터베이스에서 ID을 가져 와서 exit 또는 kill 스크립트 A.php에 즉시 사용하고 싶습니다.다른 PHP 스크립트에서 PHP 스크립트를 어떻게 죽입니까?

가능하며 어떻게 할 수 있습니까?

UPDATE 1

난 단지해서, A.php의 단일 인스턴스를 죽이고 싶어하는 경우에해서, A.php의 여러 인스턴스가있을 수 있습니다. 각 스크립트의 시작 부분에서 프로세스 ID를 가져 와서 데이터베이스 또는 세션 변수 B.php에 저장하면 어떤 A.php 스크립트를 죽일지 알 수 있습니다.

이 응용 프로그램은 웹 사이트의 백엔드 프로그램 내에서 사용됩니다. A.php 스크립트를 죽이는 이유는 A.php를 실행시키는 많은 버튼을 클릭하기 때문입니다. A.php가 실행되는 데 약 5 초가 걸리고 최신 버전의 A.php 만 필요하므로 더 이상 결과가 재미 없어서 서버 리소스를 저장하기 위해 실행중인 다른 A.php 스크립트를 죽이고 싶습니다.

+3

이 다소 이상한 방식처럼 들린다 : 는 scriptB.php에서 당신은 다른 프로세스를 종료하기 위해 system() 기능을 사용할 수 있습니다. 당신은 실제로 무엇을 성취하려고합니까? –

+0

공유하고 싶은 코드가 있습니까? – Paul

+0

작업에 잘못된 언어를 선택했거나 프로젝트 디자인이 좋지 않은 것처럼 보입니다. 이상적인 세계에서는 PHP 스크립트가 한 번 실행되고 종료됩니다. –

답변

1

scriptB.php에서 scriptA.php를 삭제하려면 시스템 명령을 실행할 수 있어야하며 웹 서버에서 실행해서는 안됩니다.

scriptA.phppid을 데이터베이스에 저장할 수 있습니다. 그것을 얻으려면 getmypid()을 사용하십시오.

system("kill $pidOfScriptA"); 
+0

Windows에서 PHP를 실행하고 있다면 어떻게 될까요? –

관련 문제