exec
(PHP 4, PHP 5)
exec — Executa um programa externo
Descrição
$command
[, array &$output
[, int &$return_var
]] )
exec() executa o
command dado.
Parâmetros
-
command -
O comando que será executado.
-
output -
Se o argumento
outputestiver presente, então a matriz especificada será prenchida com cada linha da saída do comando. Espaços ao final, como \n, não são incluídos nesta matriz. Note que se a matriz já contiver alguns elementos, exec() irá adicionar ao final da matriz. Se você não quiser que a função adicione elementos, use unset() antes de passar ela para exec(). -
return_var -
Se o argumento
return_varesta presente junto com o argumentooutput, então o status de retorno do comando executado será escrito nesta variável.
Valor Retornado
A ultima linha do resultado do comando. Se você precisa executar um comando e ter todos os dados passados diretamente de volta sem qualquer interferência, use a função passthru().
Para pegar a saída do comando executado, tenha certeza
de definir e usar o parâmetro output.
Exemplos
Example #1 Um exemplo exec()
<?php
// Mostra o nome de quem é o dono do processo php/httpd
// (em um sistema com o executável "whoami" no path)
echo exec('whoami');
?>
Notas
Quando permitindo dados fornecidos por usuário para ser passado para esta função, use escapeshellarg() ou escapeshellcmd() para se certificar que os usuários não tentarão enganar o sistema com comandos arbitrários.
Note:
Se um programa é iniciado com esta função, e deseja que ele continue rodando em background, a saída do programa precisa ser redirecionada para um arquivo ou outro output stream. Se isso não é feito, o que irá ocorrer é que o PHP ficará esperando até que a execução do programa termine.
Note: When safe mode is enabled, you can only execute files within the safe_mode_exec_dir. For practical reasons, it is currently not allowed to have .. components in the path to the executable.
With safe mode enabled, the command string is escaped with escapeshellcmd(). Thus, echo y | echo x becomes echo y \| echo x.
Veja Também
- system() - Executa um programa externo e mostra a saída
- passthru() - Executa um programa externo e mostra a saída crúa
- escapeshellcmd() - escapa metacaracteres shell
- pcntl_exec() - Executes specified program in current process space
- backtick operator