PHP 8.5.0 RC 5 available for testing

stream_isatty

(PHP 7 >= 7.2.0, PHP 8)

stream_isattyCheck if a stream is a TTY

Beschreibung

stream_isatty(resource $stream): bool

Determines if stream stream refers to a valid terminal type device. This is a more portable version of posix_isatty(), since it works on Windows systems too.

Parameter-Liste

stream

Rückgabewerte

Gibt bei Erfolg true zurück. Bei einem Fehler wird false zurückgegeben.

Beispiele

Beispiel #1 stream_isatty() example

This command can be used to determine if a standard output / standard error stream is redirected to a file.

php -r "var_export(stream_isatty(STDERR));"

Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:


true
php -r "var_export(stream_isatty(STDERR));" 2>output.txt

Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:


false

add a note

User Contributed Notes 1 note

up
0
frmphp at dyadic dot org
3 days ago
This function returns False (output is being redirected) regardless of the form of redirection. On Windows, both of these are redirected:
- php.exe script.php > outFle.txt
- php.exe script.php | Tee outFle.txt
In the second case, Tee causes the redirection to also echo to the console.

An edge usage is: in debugging a long-running script, output is wanted both in a file for later review and also in the console so it's visible in real time. But if the script alters its output based on this function, then in the second case it will produce output as if for redirection only, even though Tee enables console output.
To Top