PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

is_file> <is_dir
Last updated: Fri, 01 Jun 2007

view this page in

is_executable

(PHP 4, PHP 5)

is_executable — Tells whether the filename is executable

Description

bool is_executable ( string $filename )

Returns TRUE if the filename exists and is executable.

is_executable() became available with Windows™ in PHP version 5.0.0.

Example 639. is_executable() example

<?php

$file
= '/home/vincent/somefile.sh';

if (
is_executable($file)) {
    echo
$file.' is executable';
} else {
    echo
$file.' is not executable';
}

?>

Note: The results of this function are cached. See clearstatcache() for more details.

Tip

As of PHP 5.0.0 this function can also be used with some URL wrappers. Refer to Appendix O, List of Supported Protocols/Wrappers for a listing of which wrappers support stat() family of functionality.

See also is_file() and is_link().



add a note add a note User Contributed Notes
is_executable
Buuyo
06-Aug-2004 10:51
The change doesn't appear to be documented, so I thought I would mention it. In php5, as opposed to php4, you can no longer rely on is_executable to check the executable bit on a directory in 'nix. You can still use the first note's method to check if a directory is traversable:
     @file_exists("adirectory/.");
david at littlesystems dot com dot au
02-Jun-2002 06:38
to test whether the directory /home/david is executable (regardless of whether it is readable or writeable), issue the command:
$my_isWriteable = @file_exists("/home/david/.")

the @ gets rid of the warning when this command fails when the directory is not executable.
drtebi at hotmail dot com
09-Feb-2001 04:12
[Editor's Note: This is the expected behavior (at least on most Unix-like systems).  If a directory is not executable, then you cannot get details on the files in the directory - this includes the permissions.

--zak@php.net]

This does not work on directories!
look at this example:

if(is_file("foo/bar"))
  print "found it";

if "bar" exists, but directory "foo" is not executable, you will NOT get "found it" as result.

is_file> <is_dir
Last updated: Fri, 01 Jun 2007
 
 
show source | credits | sitemap | contact | advertising | mirror sites