PHP 7.0.6 Released

posix_isatty

(PHP 4, PHP 5, PHP 7)

posix_isattyDetermine if a file descriptor is an interactive terminal

Description

bool posix_isatty ( mixed $fd )

Determines if the file descriptor fd refers to a valid terminal type device.

Parameters

fd

The file descriptor, which is expected to be either a file resource or an integer. An integer will be assumed to be a file descriptor that can be passed directly to the underlying system call.

In almost all cases, you will want to provide a file resource.

Return Values

Returns TRUE if fd is an open descriptor connected to a terminal and FALSE otherwise.

See Also

User Contributed Notes

hfuecks at phppatterns dot com
11 years ago
Can be useful to determine whether output is being piped elsewhere, for PHP shell scripts, for example;

#!/usr/local/bin/php
<?php
if ( !posix_isatty(STDOUT) ) {
   
fwrite(STDOUT, "Invalid TTY\n");
    exit(
2);
}
fwrite(STDOUT, "Enter you name\n");
$name = fgets(STDIN);
fwrite(STDOUT,"Hello $name\n");
exit(
0);
?>

If this script is like:

script.php > outfile

outfile will contain "Invalid TTY"
To Top