popen

(PHP 3, PHP 4 , PHP 5)

popen -- Apre un puntatore ad un file di processo

Descrizione

resource popen ( string command, string mode )

Apre una pipe ad un processo eseguito forzando il comando dato da command.

Restituisce un puntatore a file identico a quello restituito da fopen(), eccetto che per il fatto che è unidirezionale (può solo essere usato per la lettura o la scrittura) e deve essere chiudo con pclose(). Questo puntatore può essere usato con fgets(), fgetss() e fwrite().

Se si verifica un errore, restituisce FALSE.

Nota: Se si sta cercando un supporto bi-direzionale (2 vie), utilizzare proc_open().

Esempio 1. Esempio di uso di popen()

<?php
$handle
= popen("/bin/ls", "r");
?>

Se il comando che deve essere eseguito non è trovato, la funzione restituisce una risorsa valida. Questo sembra strano, ma ha un senso; esso permette di accedere ai messaggi di erore restituiti dalla shell:

<?php
error_reporting
(E_ALL);

/* Aggiunge una redirezione, così possiamo ottenere stderr. */
$handle = popen('/path/to/spooge 2>&1', 'r');
echo
"'$handle'; " . gettype($handle) . "\n";
$read = fread($handle, 2096);
echo
$read;
pclose($handle);
?>

Nota: Quando si abilita la modalità sicura, si può eseguire soltanto gli eseguibili presenti nella directory safe_mode_exec_dir. Per motivi pratici, attualmente, non ` permesso avere .. come componente del percorso di un eseguibile.

Avvertimento

Con la modalità sicura attivata, tutte le parole che seguono il comando iniziale sono trattate come argomenti. Quindi, echo y | echo x diventa echo "y | echo x".

Vedere anche pclose(), fopen() e proc_open().

Hosting by: hurra.com
Generated: 2007-01-26 17:56:28