Maison > développement back-end > tutoriel php > Explication détaillée du protocole php

Explication détaillée du protocole php

php中世界最好的语言
Libérer: 2023-03-18 07:52:01
original
3966 Les gens l'ont consulté

Nous savons que la technologie de développement de programmes WEB d'aujourd'hui est pleine de controverses, mais quelle que soit la manière dont la technologie WEB se développera à l'avenir, le protocole de communication de base pour l'inspection de la qualité des programmes WEB est très important. Aujourd'hui, je vais vous présenter l'application WEB Inner. Workings

PHP est livré avec un certain nombre de protocoles wrapper de style URL intégrés pour les systèmes de fichiers comme fopen(), copy(), file_exists() et filesize() 🎜> Fonction. En plus de ces protocoles d'encapsulation, des protocoles d'encapsulation personnalisés peuvent également être enregistrés via stream_wrapper_register().

Remarque : La syntaxe URL utilisée pour décrire un protocole d'encapsulation ne prend en charge que la syntaxe schéma://.... Les syntaxes schéma:/ et schéma: ne sont pas prises en charge.

type de protocole php

fichier:// — accéder au système de fichiers local

http:// — accéder à l'URL HTTP(s)

ftp:// — Accédez aux URL FTP(s)

php:// — Accédez aux flux d'entrée/sortie individuels (flux d'E/S)

zlib:// — Flux compressés

data:// — Données (RFC 2397)

glob:// — Trouve un modèle de chemin de fichier correspondant

phar:// — Archive PHP

ssh2:// — Secure Shell 2

rar:// — RAR

ogg:// — Streaming audio

expect:// — Traiter les flux interactifs

PHP.ini

allow_url_fopen : on Par défaut, activer cette option signifie activer le protocole d'encapsulation fopen sous la forme d'une URL, faisant il permet d'accéder aux fichiers objets URL, etc.

allow_url_include : off est désactivé par défaut. Si cette option est activée, elle permet l'inclusion de fichiers objets URL, etc.

file:// protocole

fichier. :// — accéder au système de fichiers local, non affecté par Allow_url_fopen et Allow_url_include


Utilisation

file:// [chemin absolu et nom de fichier du file]

   
http://127.0.0.1/code/1.php?file=file:///E:\phpStudy\WWW\code\phpinfo.php
Copier après la connexion



php://protocol

php:// — Accéder à diverses entrées/sorties streams (flux d'E/S)

Vous n'avez pas besoin d'activer Allow_url_fopen, seuls php://input, php://stdin, php://memory et php://temp doivent activer Allow_url_include .

php://stdin, php://stdout et php://stderr

php://stdin, php://stdout et php://stderr permettent un accès direct à PHP Le flux d'entrée ou de sortie correspondant du processus.

php://stdin est en lecture seule, php://stdout et php://stderr sont en écriture seule.

php://stdin

<?php
 while($line = fopen(&#39;php://stdin&#39;,&#39;r&#39;))
 {//open our file pointer to read from stdin
 echo $line."\n";
 echo fgets($line);//读取
Copier après la connexion


<?php
 $fd = fopen(&#39;php://stdout&#39;, &#39;w&#39;);
 if ($fd) {
 echo $fd."\n";
 fwrite($fd, "test");
 fwrite($fd, "\n");
 fclose($fd);
 }
?>
Copier après la connexion
<?php
 $stderr = fopen( &#39;php://stderr&#39;, &#39;w&#39; );
 echo $stderr."\n";
 fwrite($stderr, "uknow" );
 fclose($stderr);
?>
Copier après la connexion
Le pseudo-protocole le plus couramment utilisé, qui peut généralement être utilisé pour lire n'importe quel fichier Pick.

php://filter est un méta-wrapper conçu pour filtrer les applications lorsqu'un flux de données est ouvert. Ceci est utile pour les fonctions de fichier tout-en-un comme readfile(), file() et

file_get_contents(), où il n'y a aucune possibilité d'appliquer des filtres supplémentaires avant la lecture du contenu du flux.


resource= Ce paramètre est obligatoire. Il spécifie le flux de données que vous souhaitez filtrer.

read= Un ou plusieurs noms de filtre peuvent être définis, séparés par des barres verticales.

write=<Écrire la liste des filtres de chaîne> Un ou plusieurs noms de filtre peuvent être définis, séparés par des barres verticales.

Toute liste de filtres non préfixée par read= ou write= sera appliquée à la chaîne de lecture ou d'écriture, selon le cas.

<?php
    include($_GET[&#39;file&#39;])
?>
Copier après la connexion
http://127.0.0.1/code/1.php?file=php://filter/read=convert.base64-encode/resource=./phpinfo.php


Je pense que vous maîtrisez les méthodes après avoir lu ces cas. Pour des informations plus intéressantes, veuillez prêter attention aux autres articles connexes sur le site Web chinois de php !

Lecture connexe :

Optimisation du trafic PHP élevé ?

Mise en œuvre du timing de vente flash de produits PHP (solution au trafic important)

Comment PHP résout le problème des grands sites Web trafic et haute concurrence

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal