PHP의 is_executable() 함수는 지정한 파일이 실제로 존재하며 실행 가능한 상태인지 검사하는 내장 함수입니다. 파일 시스템을 다루는 스크립트에서 특정 프로그램이나 바이너리를 실행하기 전에 권한과 존재 여부를 미리 확인할 때 유용하게 사용됩니다.
파일이 존재하고 실행 가능하면 TRUE를 반환하고, 그렇지 않거나 오류가 발생하면 FALSE를 반환합니다.
문법(Syntax)
is_executable(file_path)
매개변수(Parameters)
file_path − 실행 가능 여부를 검사할 파일의 경로를 나타냅니다. 이 매개변수는 필수 값입니다.
반환값(Return)
파일이 존재하고 실행 가능한 경우 TRUE를 반환하며, 파일이 없거나 실행 권한이 없는 경우 또는 오류가 발생한 경우 FALSE를 반환합니다.
예제 1 – 실행 가능한 파일 검사
<?php
$check = "D:/tutorials/setup.exe";
if (is_executable($check))
echo ("실행 가능한 파일입니다!");
else
echo ("실행할 수 없는 파일입니다!");
?>
출력 결과
실행 가능한 파일입니다!
위 예제에서는 setup.exe 파일이 존재하고 실행 권한을 가지고 있으므로 TRUE가 반환되어 "실행 가능한 파일입니다!"라는 메시지가 출력됩니다.
예제 2 – 실행 불가능한 파일 검사
<?php
$check = "D:/tutorials/java.docx";
if (is_executable($check))
echo ("실행 가능한 파일입니다!");
else
echo ("실행할 수 없는 파일입니다!");
?>
출력 결과
실행할 수 없는 파일입니다!
java.docx는 문서 파일로 실행 속성이 없기 때문에 FALSE가 반환되어 "실행할 수 없는 파일입니다!"라는 결과가 출력됩니다.
참고 사항
이 함수의 결과는 캐시에 저장됩니다. 보다 정확한 검사를 위해
clearstatcache()함수를 함께 사용하는 것이 좋습니다.Windows 환경에서는 PHP 버전에 따라 실행 비트(execution bit) 개념이 다르게 적용될 수 있으므로, 크로스 플랫폼 코드 작성 시 주의가 필요합니다.
파일 존재 여부만 확인하려면
file_exists(), 읽기 가능 여부는is_readable(), 쓰기 가능 여부는is_writable()함수를 사용할 수 있습니다.