sapi_windows_vt100_support
(PHP 7 >= 7.2.0)
sapi_windows_vt100_support — Get or set VT100 support for the specified stream associated to an output buffer of a Windows console.
Beschreibung
$stream
[, bool $enable
] ) : bool
If enable
is omitted, the function returns TRUE
if the stream stream
has VT100 control codes enabled, FALSE
otherwise.
If enable
is specified, the function will try to enable or disable the VT100 features of the stream stream
.
If the feature has been successfully enabled (or disabled), the function will return TRUE
, or FALSE
otherwise.
At startup, PHP tries to enable the VT100 feature of the STDOUT
/STDERR
streams. By the way, if those streams are redirected to a file, the VT100 features may not be enabled.
If VT100 support is enabled, it is possible to use control sequences as they are known from the VT100 terminal. They allow the modification of the terminal's output. On Windows these sequences are called Console Virtual Terminal Sequences.
This function uses the ENABLE_VIRTUAL_TERMINAL_PROCESSING
flag implemented in the Windows 10 API, so the VT100 feature may not be available on older Windows versions.
Parameter-Liste
-
stream
-
The stream on which the function will operate.
-
enable
-
If specified, the VT100 feature will be enabled (if
TRUE
) or disabled (ifFALSE
).
Rückgabewerte
If enable
is not specified: returns TRUE
if the VT100 feature is enabled, FALSE
otherwise.
If enable
is specified: Gibt bei Erfolg TRUE
zurück. Im Fehlerfall wird FALSE
zurückgegeben.
Beispiele
Beispiel #1 sapi_windows_vt100_support() default state
By default, STDOUT
and STDERR
have the VT100 feature enabled.
php -r "var_export(sapi_windows_vt100_support(STDOUT));echo ' ';var_export(sapi_windows_vt100_support(STDERR));"
Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:
true true
By the way, if a stream is redirected, the VT100 feature will not be enabled:
php -r "var_export(sapi_windows_vt100_support(STDOUT));echo ' ';var_export(sapi_windows_vt100_support(STDERR));" 2>NUL
Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:
true false
Beispiel #2 sapi_windows_vt100_support() changing state
You won't be able to enable the VT100 feature of STDOUT
or STDERR
if the stream is redirected.
php -r "var_export(sapi_windows_vt100_support(STDOUT, true));echo ' ';var_export(sapi_windows_vt100_support(STDERR, true));" 2>NUL
Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:
true false
Beispiel #3 Example usage of VT100 support enabled
<?php
$out = fopen('php://stdout','w');
fwrite($out, 'Just forgot a lettr.');
// Moves the cursor two characters backwards
fwrite($out, "\033[2D");
// Inserts one blank, shifting existing text to the right -> Just forgot a lett r.
fwrite($out, "\033[1@");
fwrite($out, 'e');
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
Just forgot a letter.
Deutsche Übersetzung
Sie haben gebeten, diese Seite auf Deutsch zu besuchen. Momentan ist nur die Oberfläche übersetzt, aber noch nicht der gesamte Inhalt.Wenn Sie mir bei Übersetzungen helfen wollen, ist Ihr Beitrag willkommen. Alles, was Sie tun müssen, ist, sich auf der Website zu registrieren und mir eine Nachricht zu schicken, in der Sie gebeten werden, Sie der Gruppe der Übersetzer hinzuzufügen, die Ihnen die Möglichkeit gibt, die gewünschten Seiten zu übersetzen. Ein Link am Ende jeder übersetzten Seite zeigt an, dass Sie der Übersetzer sind und einen Link zu Ihrem Profil haben.
Vielen Dank im Voraus.
Dokument erstellt 30/01/2003, zuletzt geändert 26/10/2018
Quelle des gedruckten Dokuments:https://www.gaudry.be/de/php-rf-sapi-windows-vt100-support.html
Die Infobro ist eine persönliche Seite, deren Inhalt in meiner alleinigen Verantwortung liegt. Der Text ist unter der CreativeCommons-Lizenz (BY-NC-SA) verfügbar. Weitere Informationen auf die Nutzungsbedingungen und dem Autor.
Referenzen
Diese Verweise und Links verweisen auf Dokumente, die während des Schreibens dieser Seite konsultiert wurden, oder die zusätzliche Informationen liefern können, aber die Autoren dieser Quellen können nicht für den Inhalt dieser Seite verantwortlich gemacht werden.
Der Autor Diese Website ist allein dafür verantwortlich, wie die verschiedenen Konzepte und Freiheiten, die mit den Nachschlagewerken gemacht werden, hier dargestellt werden. Denken Sie daran, dass Sie mehrere Quellinformationen austauschen müssen, um das Risiko von Fehlern zu reduzieren.