PHP의 pclose() 함수는 popen() 함수로 열었던 파이프(pipe)를 닫는 역할을 합니다. 이 함수는 실행된 프로세스의 종료 상태(termination status)를 반환하며, 오류가 발생한 경우에는 -1을 반환합니다.
문법 (Syntax)
pclose(file_pointer)
매개변수 (Parameters)
file_pointer − 닫고자 하는 파이프를 지정합니다. 이 값은
popen()호출 시 반환된 리소스 포인터입니다.
반환값 (Return Value)
pclose() 함수는 실행된 프로세스의 종료 상태를 반환합니다. 만약 오류가 발생하면 -1이 반환됩니다.
예제 1
다음 예제는 popen()으로 파이프를 연 뒤, pclose()로 닫는 기본적인 사용법입니다.
<?php
// 파이프 열기
$file_pointer = popen("/bin/ls", "r");
pclose($file_pointer);
?>
출력 결과
TRUE
예제 2
다른 파일 경로를 대상으로 파이프를 열고 닫는 예제입니다.
<?php
// 파이프 열기
$file_pointer = popen("/executable/setup.exe", "r");
pclose($file_pointer);
?>
출력 결과
TRUE
참고 사항
pclose()는 반드시 popen()으로 생성된 포인터에만 사용할 수 있으며, 일반적인 fopen()으로 연 파일에는 적용되지 않습니다. 또한 파이프를 열어둔 상태로 두면 시스템 자원이 낭비될 수 있으므로, 작업이 끝난 후에는 항상 pclose()로 닫아주는 것이 좋은 코딩 습관입니다.