popen

popen -- Abre um processo como ponteiro de arquivo

Descrição

int popen ( string command, string mode)

Abre uma pipe para um processo executado ao se dar um fork para o comando dado por command .

Retorna um ponteiro de arquivo identico ao retornado por fopen( ) , exceto que ele é unidirecional (somente pode ser usado para leitura ou gravação ) e tem que ser fechado com pclose . Este ponteiro pode ser usado com fgets( ) , fgetss( ) e fputs( ) .

Caso um erro ocorra retorna FALSE .

Nota : Se você está procurando por suporte bidirecional ( via dupla) , utilize proc_open( ) .

 
?php

 
$fp

 
=

 
popen

 
(

 
"

 
/

 
bin

 
/

 
ls"

 
,

 
"r")

 
;

 
?





Nota : Se o commando a ser executado não for encontradom um recurso válido será retornado . Isso pode parecer esquisito , mas tem sentido : permite que você acesse a mensagem de erro retornado pelo sistema operacional .

 
?php

 
error_reporting(

 
E_ALL)

 
;

 
/

 
*

 
Add

 
redirection

 
so

 
we

 
can

 
get

 
stderr

 
.

 
*

 
/

 
$fp

 
=

 
popen('

 
/

 
path

 
/

 
to

 
/

 
spooge

 
2

 
1'

 
,

 
'r')

 
;

 
echo

 
"'$fp'

 
;

 
"

 
.

 
gettype($fp

 
)

 
.

 
"\n"

 
;

 
$read

 
=

 
fread($fp

 
,

 
2096)

 
;

 
echo

 
$read

 
;

 
pclose($fp)

 
;

 
?





Veja também pclose( ) , fopen( ) e proc_open( ) .