I/O-strömmar

Från Wiki.linux.se
Hoppa till navigering Hoppa till sök

CLI SAPI definierar några konstanter för I/O-strömmar för att göra programmering för kommandoraden lite enklare.

CLI-specifika konstanter

Konstant Beskrivning
STDIN En redan öppen ström till stdin. Detta sparar att öppna den med:
<?php
$stdin = fopen('php://stdin', 'r');
?>

Om du vill läsa en enskild rad från stdin kan du använda:

<?php
$line = trim(fgets(STDIN)); // läser en rad från STDIN
fscanf(STDIN, "%d\n", $number); // läser ett nummer från STDIN
?>
STDOUT En redan öppen ström till stdout. Detta sparar att öppna den med:
<?php
$stdout = fopen('php://stdout', 'w');
?>
STDERR En redan öppen ström till stderr. Detta sparar att öppna den med:
<?php
$stderr = fopen('php://stderr', 'w');
?>

Med tanke på ovanstående behöver du inte öppna t.ex. en ström för stderr själv, utan kan helt enkelt använda konstanten istället för strömresursen:

php -r 'fwrite(STDERR, "stderr\n");'

Du behöver inte explicit stänga dessa strömmar, eftersom de stängs automatiskt av PHP när ditt skript avslutas.

Notera:

Dessa konstanter är inte tillgängliga om PHP-skriptet läses från stdin.

Sidslut

Orginalhemsidan på Engelska :https://www.php.net/manual/en/features.commandline.io-streams.php
PHP

Funktioner


Det här är en maskinöversättning av PHP-manualen till svenska. Om du hittar fel är vi tacksamma om du rapporterar dem via formuläret som finns på https://www.linux.se/kontaka-linux-se/

Tack till Datorhjälp.se som har sponsrat Linux.se med webserver.