PHP에서 Bash 명령 실행
shell_exec 함수를 사용하여 PHP에서 bash 스크립트를 실행하려고 할 때 문제가 발생하면 실망스러울 수 있습니다. ls와 같은 명령은 제대로 작동하지만 사용자 정의 스크립트 실행이 실패할 수 있습니다.
이 문제는 PHP의 현재 작업 디렉터리에서 자주 발생합니다. 외부 명령을 호출할 때 실행 중인 스크립트가 올바른 디렉터리에서 액세스할 수 있는지 확인하는 것이 중요합니다.
해결책
이 문제를 해결하려면 chdir 함수를 사용하여 스크립트를 실행하기 전에 일시적으로 작업 디렉터리:
<code class="php">$old_path = getcwd(); chdir('/my/path/'); $output = shell_exec('./script.sh var1 var2'); chdir($old_path);</code>
이 기술은 쉘 명령을 호출하기 전에 스크립트가 의도한 디렉터리 "안에" 있는지 확인합니다. 스크립트 경로는 chdir 함수 호출에서 지정할 수 있습니다. 스크립트 실행이 완료되면 chdir($old_path)을 사용하여 원래 작업 디렉터리가 복원됩니다.
위 내용은 PHP에서 Bash 스크립트를 실행하고 작업 디렉터리 문제를 방지하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!