popen
(PHP 4, PHP 5)
popen — Cr�e un processus de pointeur de fichier
Description
Cr�e un processus de pointeur de fichier, ex�cut� en effectuant un fork de la commande fournie par le param�tre command .
Liste de param�tres
- command
-
La commande
- mode
-
Le mode
Valeurs de retour
Retourne un pointeur de fichier identique � celui retourn� par fopen(), hormis le fait qu'il sera unidirectionnel (lecture seule, ou �criture seule), et doit �tre termin� par pclose(). Ce pointeur peut �tre utilis� avec fgets(), fgetss() et fwrite().
Si une erreur survient, la fonction retournera FALSE.
Exemples
Exemple #1 Exemple avec popen()
<?php
$handle = popen("/bin/ls", "r");
?>
Si la commande � ex�cuter n'a pu �tre trouv�e, une ressource valide sera retourn�e. Cela semble �trange, mais c'est pratique. cela vous permet d'acc�der aux messages d'erreur qui ont �t� retourn�s par le Shell :
Exemple #2 Exemple avec popen()
<?php
error_reporting(E_ALL);
/* Ajoute une redirection pour que vous puissiez lire stderr. */
$handle = popen('/path/to/spooge 2>&1', 'r');
echo "'$handle'; " . gettype($handle) . "\n";
$read = fread($handle, 2096);
echo $read;
pclose($handle);
?>
Notes
Note: Si vous souhaitez un support bidirectionnel (two-way), utilisez la fonction proc_open().
Note: Lorsque le safe mode est activ�, vous pouvez uniquement ex�cuter des programmes qui se situent dans le dossier d�fini par safe_mode_exec_dir. Pour des raisons pratiques, il n'est actuellement pas permis d''avoir le composant .. dans le chemin de l'ex�cutable.
Lorsque le safe mode est activ�, la cha�ne de commande est �chapp�e avec la fonction escapeshellcmd(). Par exemple, echo y | echo x devient echo y \| echo x.
Voir aussi
- pclose() - Ferme un processus de pointeur de fichier
- fopen() - Ouvre un fichier ou une URL
- proc_open() - Ex�cute une commande et ouvre les pointeurs de fichiers pour les entr�es / sorties