Operador de execução em PHP

Nenhum produto encontrado nessa seleção.

Em PHP você pode utilizar o acento grave (`) como operador de execução de comandos do servidor, ou seja, o interpretador do PHP irá tentar executar qualquer coisa que estiver entre ` e ` para retornar o output do comando para a variável que você estiver configurando.

Por exemplo:

<?php
// Windows
$output = `ipconfig`;

// Abre a tag HTML pre
echo '<pre>';

// Mostra o resultado na tela
echo $output;

// Fecha a tag HTML pre
echo '</pre>';
?>

Se você estiver no Windows, verá algo como:

Configuração de IP do Windows

Adaptador Ethernet CABO:

   Sufixo DNS específico de conexão. . . . . . : domínio
   Endereço IPv6 de link local . . . . . . . . : O Endereço IPv6 aqui
   Endereço IPv4. . . . . . . .  . . . . . . . : O Endereço IP aqui
   Máscara de Sub-rede . . . . . . . . . . . . : 255.255.255.0
   Gateway Padrão. . . . . . . . . . . . . . . : O gateway aqui

Adaptador de túnel domínio:

   Estado da mídia. . . . . . . . . . . . . .  : mídia desconectada
   Sufixo DNS específico de conexão. . . . . . : domínio

Adaptador de túnel Teredo Tunneling Pseudo-Interface:

   Sufixo DNS específico de conexão. . . . . . : 
   Endereço IPv6 . . . . . . . . . . . . . . . : O Endereço aqui
   Endereço IPv6 de link local . . . . . . . . : O Endereço aqui
   Gateway Padrão. . . . . . . . . . . . . . . : ::

Isso é o que o comando retornaria para o prompt de comando quando executado.

Se você estiver no Linux, poderá executar o seguinte:

<?php
// Linux
$output = `ls -al`;

// Abre a tag HTML pre
echo '<pre>';

// Mostra o resultado na tela
echo $output;

// Fecha a tag HTML pre
echo '</pre>';
?>

E terá um output de listagem de pastas do sistema.

Basicamente, basta colocar o comando que você deseja entre dois acentos graves:

$comando = `ipconfig /all`;

Isto seria o mesmo que a função shell_exec() do PHP retornaria.

Aulas anteriores

Caso queira acessar os links para aulas anteriores:

Veja todas as aulas, e mais, na categoria Curso de PHP do Tutsup.