Cette fois, je vais vous apporter une explication détaillée des différences entre php://output et php://stdout, et précautions d'utilisation de php://output et php://stdoutDe quoi s’agit-il ? Voici des cas concrets.
Trouvez la réponse dans la documentation officielle de PHP. Les explications des flux d'entrée php://stdin et php://input sont les suivantes (l'explication du flux de sortie est trop brève) :Le document n'explique pas directement la différence entre les deux. Une comparaison minutieuse peut conduire aux informations suivantes : 1. Les deux sont des flux en lecture seule 2. php://stdin est ; l'entrée standard du processus PHP, php:/ /input est utilisée pour lire les données originales du corps de la requête. Avec ces informations, comment comprendre correctement les différences essentielles entre les deux ? Suivez les invites de saisie du processus php://stdin, associez le processus d'exécution du processus PHP et combinez-le avec les différences dans SAPI, vous pouvez obtenir les principales différences entre les deux : php:/ /stdin est le flux d'entrée du processus PHP. Il peut y avoir des données entrantes pendant l'exécution Le code suivant est utilisé pour vérifier la conclusion :php://stdin php://stdin, php://stdout and php://stderr allow direct access to the corresponding input or output stream of the PHP process. The stream references a duplicate file descriptor, so if you open php://stdin and later close it, you close only your copy of the descriptor-the actual stream referenced by STDIN is unaffected. Note that PHP exhibited buggy behavior in this regard until PHP 5.2.1. It is recommended that you simply use the constants STDIN, STDOUT and STDERR instead of manually opening streams using these wrappers. php://stdin is read-only, whereas php://stdout and php://stderr are write-only. php://input php://input is a read-only stream that allows you to read raw data from the request body. In the case of POST requests, it is preferable to use php://input instead of $HTTP_RAW_POST_DATA as it does not depend on special php.ini directives. Moreover, for those cases where $HTTP_RAW_POST_DATA is not populated by default, it is a potentially less memory intensive alternative to activating always_populate_raw_post_data. php://input is not available with enctype=”multipart/form-data”.Copier après la connexion
// file: test.php file_put_contents("php://output", "message sent by output" . PHP_EOL); file_put_contents("php://stdout", "message sent by stdout" . PHP_EOL); print("message sent by print" . PHP_EOL); echo "SAPI:" , PHP_SAPI , PHP_EOL;
message sent by output message sent by stdout message sent by print SAPI:cli
message sent by output message sent by print SAPI:fpm-fcgi
PHP calcule l'ensemble entier de très grands nombres
Explication détaillée du cas d'obtention de nouvelles données utilisant PHP+ajax
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!