시스템 프로그램 실행 passthru

(PHP 4, PHP 5, PHP 7, PHP 8)

passthru — 외부 프로그램 실행 및 원시 출력 표시


설명

passthru(string $command, int &$result_code = null): ?bool

passthru() 함수는 command을 실행한다는 점에서 exec() 함수와 유사합니다. 이 함수는 Unix 명령의 출력이 브라우저로 직접 다시 전달되어야 하는 바이너리 데이터인 경우 exec() 또는 system() 대신 사용해야 합니다.

이것의 일반적인 용도는 이미지 스트림을 직접 출력할 수 있는 pbmplus 유틸리티와 같은 것을 실행하는 것입니다. Content-type을 image/gif로 설정한 다음 pbmplus 프로그램을 호출하여 gif를 출력하면 이미지를 직접 출력하는 PHP 스크립트를 생성할 수 있습니다.


매개변수

command
실행할 명령입니다.
result_code
result_code 인수가 있으면 Unix 명령의 반환 상태가 여기에 배치됩니다.

반환 값

성공하면 null을, 실패하면 false를 반환합니다.


메모

경고 사용자 제공 데이터가 이 함수에 전달되도록 허용할 때 escapeshellarg() 또는 escapeshellcmd()를 사용하여 사용자가 시스템을 속여 임의의 명령을 실행하지 못하도록 합니다.

메모: 프로그램이 이 함수로 시작된 경우 백그라운드에서 계속 실행하려면 프로그램의 출력을 파일이나 다른 출력 스트림으로 리디렉션해야 합니다. 그렇게 하지 않으면 프로그램 실행이 끝날 때까지 PHP가 중단됩니다.


기타