begin process at 2010 02 10 02:36:47
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Astuces

 > FLUX D'ENTRÉE ET DE SORTIE

FLUX D'ENTRÉE ET DE SORTIE


 Information sur la source

 Description

Qui n'a jamais eu besoin de récupérer dans un script PHP des données envoyées par une application tierce ?
Perso j'ai eu le problème pour récupérer du texte d'une applet Java d'édition de texte.

Quel est le problème ?
En fait, l'application fournit le texte en vrac. Or, $_POST retourne un tableau... Donc tout caractère &, # et autres vont venir compliquer la récupération.
Le gros problème est qu'on ne peut pas modifier l'application à la source des données.

La solution est de récupérer telle quelle la requête web envoyée au script PHP.
Voila comment faire, très simplement, avec une fonction usuelle mais que peu de monde sait utiliser d'une manière plus approfondie :

Source


 Conclusion

Pour les newbies, cette fonction retourne un tableau. Pour afficher le texte complet :

echo join("", file("php://input"));

Cet exemple fini, je me permets de vous citer la doc PHP qui sera plus efficace qu'un long discours :

---------------------
Flôts d'entrée/sortie
---------------------
PHP 3.0.13 et plus récent, php://output et php://input depuis PHP 4.3



php://stdin

php://stdout

php://stderr

php:/ /output

php://input



php://stdin, php://stdout et php://stderr donne accès au flux correspondant d'entrée ou de sortie du processus PHP.

php://output vous permet d'écrire dans le buffer de sortie, de la même manière que print() et echo().

php://input permet de lire des données POST bruts. C'est moins gourmand en mémoire que $HTTP_RAW_POST_DATA et il n'y a pas de directive spéciale dans php.ini.

php://stdin et php://input sont lecture seule, tandis que php://stdout, php://stderr et php://output sont en écriture seule.

php://filter est une sorte de méta-gestionnaire, prévu pour qui permet l'utilisation de filtre avec les données d'entrée au moment du démarrage du script. C'est pratique avec des fonctions compactes comme readfile(), file() et file_get_contents() où il n'y a pas d'opportunité d'appliquer un filtre aux données lues.


 Sources du même auteur

Source avec Zip Source avec une capture IMAGE CRYPTÉE DE PROTECTION POUR FORMULAIRE WEB
TOUTES LES FONCTIONS DE PHP DÉTAILLÉES !
Source avec Zip Source avec une capture CRÉATION DYNAMIQUE DE BANNIÈRES
JOUR D'UNE DATE

 Sources de la même categorie

Source avec une capture PAGINATION EN PHP par Orangina
Source avec Zip POO - DEBUGGER par DiGhan
Source avec Zip CRAWLER DE SITE EN PHP par Mcjo
DÉCOUPAGE D'UN TEXTE EN FONCTION DES SAUTS DE LIGNES par biloubil
RÉCUPÉRER LE CHEMIN RELATIF D'UN OBJET PAR RAPPORT À LA RACI... par FredPsy

Commentaires et avis

Commentaire de Kirua le 07/09/2004 17:23:24

si par exemple je veux récupérer ce qu'un programme (.exe sous win) écrit dans une console, je fais comment?

càd que je voudrais pvr écrire des applis en C++ très spécifiques, auxquelles j'envoie des paramètres via php et qui me renvoient des infos (calculées dans le programme).

ça fait une sorte de CGI, mais avec la souplesse de php et puis je dois pas écrire mon programme comme un CGI, n'importe quelle appli C++ console que j'ai déjà fait l'affaire.

Commentaire de Kirua le 08/09/2004 15:55:04

c'est bon, trouvé ;)
y a un tas de fct: exec, passthru, `commande`, shell_exec, system... chacun sa façon!

par contre j'en n'ai pas trouvée qui permettait d'envoyer des infos au programme qd il en demande (je vuex dire écrire sur son flux std d'entrée, ce qu'on récupère par cin en C++ ou scanf en Cà)

Commentaire de slyderkiller le 03/09/2005 15:23:13

Bonjour
est pour récuperer des variables d'un applet java pour les utiliser ensuite vers php c'est possible?

 Ajouter un commentaire




Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,437 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales