VARIAVEIS PRÉ-DEFINIDAS DO PHP
Autor: Adriano Fialho | Publicado: 2011-11-18T02:57:00-08:00


Olá pessoal,

Resolvi fazer esse post para tirar algumas dúvidas sobre variáveis predefinida do PHP. Uma variável predefinida é uma variável reservada do PHP que armazena informações por default.
Para verificar as variáveis predefinidas habilitadas do php você pode olhar no próprio phpinfo.
 
&lt;?php&nbsp;&nbsp; phpinfo();?&gt;




Segundo o php.net.
"PHP provê um grande número de variáveis pré-definidas para todos scripts. As
   variáveis representam tudo de
   variáveis externas à
   variáveis nativas de ambiente, última mensagem de erro à último cabeçalho
   recebido".&nbsp;










Índice

Superglobais — Superglobais são variáveis nativas que estão sempre disponíveis em todos escopos
$GLOBALS — Referencia todas variáveis disponíveis no escopo global
$_SERVER — Informação do servidor e ambiente de execução
$_GET — HTTP GET variáveis
$_POST — HTTP POST variables
$_FILES — HTTP File Upload variáveis
$_REQUEST — Variáveis de requisição HTTP
$_SESSION — Variáveis de sessão
$_ENV — Environment variables
$_COOKIE — HTTP Cookies
$php_errormsg — A mensagem de erro anterior
$HTTP_RAW_POST_DATA — Informação não-tratada do POST
$http_response_header — Cabeçalhos de resposta HTTP
$argc — O número de argumentos passados para o script
$argv — Array de argumentos passados para o script






Fonte "http://php.net/manual/pt_BR/reserved.variables.php"





As variáveis predefinidas são variáveis criadas automaticamente pelo interpretador do PHP. Elas são utilizadas vastamente no desenvolvimento de aplicações, pois, provém diversas informações de interação da aplicação, sendo acessíveis em qualquer parte do código.Com tais variáveis é possível recuperar informações de formulários, de cookies, do servidor e do visitante do site. Pretendo resumir as variáveis utilizadas com mais frequência.- Variável predefinida $_SERVERA variável predefinida $_SERVER é um array&nbsp; que armazena informações repassadas pelo servidor web relacionadas a página que está sendo executada.Como
 o PHP roda em diversos servidores, que por sua vez são desenvolvidos 
com propósitos diferentes, pode ocorrer de nem todas as variáveis aqui 
citadas estarem preenchidas com o valor esperado. Pode acontecer também 
de haver outras variáveis não documentadas.Descobrindo qual página foi solicitada pelo usuário: utilize $_SERVER['PHP_SELF'];&lt;?php&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;$_SERVER['PHP_SELF'];&nbsp;
?&gt;Se
 você salvar o código acima na pasta htdocs do seu apache e acessar 
como: http://localhost/minhapagina.php, irá aparecer '/minhapagina.php'.Se ela estiver dentro de um subdiretório, o subdiretório também será listado.

Descobrindo qual o servidor que está instalado: utilize $_SERVER['SERVER_NAME'];&lt;?php&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;$_SERVER['SERVER_NAME'];
&nbsp;?&gt;Se você estiver rodando o script em sua casa, será exibido 'localhost'.Recuperando os parâmetros de uma URL: utilize $_SERVER['QUERY_STRING'];

&lt;?php&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;$_SERVER['QUERY_STRING'];&nbsp;
?&gt;A
 variável $_SERVER['QUERY_STRING'] conterá os parâmetros passados em uma
 URL. Esses parâmetros são todos os caracteres existentes na url após o 
ponto de interrogação (?). Para testar o script acima, após o endereço 
da página acrescente: ?site=manjaphp.blogspot.com&amp;teste=trueTudo que estiver após o ? será exibido.Obs: Esse não é o melhor método para recuperar parâmetros de uma URL, porém, é muito valioso para debugar aplicações.Descobrindo onde são armazenados os arquivos de um servidor web: utilize echo $_SERVER['DOCUMENT_ROOT'];&lt;?php&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;$_SERVER['DOCUMENT_ROOT'];&nbsp;
?&gt;Essa
 variável exibe o diretório padrão de armazenagem dos arquivos do 
servidor web, se for o apache, muito provavelmente será a pasta htdocs.Descobrindo o browser (navegador) e o sistema operacional do usuário: utilize echo $_SERVER['HTTP_USER_AGENT'];

&lt;?php&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;$_SERVER['HTTP_USER_AGENT'];
&nbsp;?&gt;Essa
 informação é passada pelo browser do usuário, e pode ser facilmente 
modificada, sendo assim, impossível de confiar em tal informação.Descobrindo o IP do usuário: utilize $_SERVER['REMOTE_ADDR'];&lt;?php&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;$_SERVER['REMOTE_ADDR'];
&nbsp;?&gt;Descobrindo o caminho físico do arquivo: utilize:&lt;?php&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;$_SERVER['SCRIPT_FILENAME'];&nbsp;
?&gt;- Variável predefinida $_ENVCom
 a variável $_ENV é possível recuperar variáveis de ambiente do sistema 
operacional. As variáveis de ambiente são particulares a cada sistema e a
 cada usuário.Um exemplo, no Windows, existe a variável PATH, 
que diz ao sistema operacional onde procurar por um programa que for 
solicitado. Portanto, quando você digita somente o nome de um programa 
na ciaxa de comando Executar, do menu Iniciar do Windows, o Windos 
procura o programa em cada diretório que está armazenado na variável 
PATH.E com o PHP, também podemos acessar essas variáveis do ambiente do servidor. Veja como acessar a variável PATH do ambiente:&lt;?php&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;$_ENV['PATH'];&nbsp;
?&gt;Irá imprimir uma lista de diretórios, separados por ;- Variável predefinida $_COOKIECom
 a variável $_COOKIE é possível recuperar informações armazenadas em 
cookie do navegador do usuário. Muito útil, comumente utilizadas nas 
diversas aplicações web, como por exemplo, webmail, comércio eletrônico,
 sites de relacionamentos, etc.Essa variável vai ser melhor explicada em um próximo post aqui no manjaphp.blogspot.com- Variável predefinida $_GETA
 variável $_GET é um array, disponível em todo código PHP, que serve 
para recuperar os parâmetros passado na url, separadamente.Exemplo:&lt;?php&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;'Site:&nbsp;'&nbsp;.&nbsp;$_GET['site'];&nbsp;
?&gt;O
 código acima, se acessado da seguinte maneira 
'http://localhost/pagina.php?site=manjaphp.blogspot.com' exibirá a 
seguinte saída:Site: manjaphp.blogspot.com- Variável predefinida $_POSTCom a variável $_POST é possível recuperar informações enviadas pelo usuário utilizando um formulário.Essa variável vai ser melhor explicada em um próximo post aqui no manjaphp.blogspot.com- Variável predefinida $_FILESCom a variável $_POST é possível recuperar arquivos enviados (upload) pelo usuário utilizando um formulário.Essa variável vai ser melhor explicada em um próximo post aqui no manjaphp.blogspot.com- Variável predefinida $_REQUESTA
 variável $_REQUEST reúne os valores das variáveis $_GET, $_POST e 
$_COOKIES. Ou seja, se voc não tem certeza se a variável vai ser 
informada na URL ou em um formulário ou em um cookie, você pode utilizar
 $_REQUEST, que tem todas essas variávels ($_GET, $_POST e $_COOKIES).&lt;?php&nbsp;&nbsp;&nbsp;&nbsp;echo&nbsp;'Site:&nbsp;'&nbsp;.&nbsp;$_REQUEST['site'];
&nbsp;?&gt;Obs: Tome muito cuidado ao utilizá-la. Não saber de onde vem, pode ser uma falha de segurança.- Variável predefinida $_SESSIONA
 variável $_SESSION pode armazenar varáveis durante uma sessão do 
usuário. Entende-se por sessão o tempo de navegação do usuário por 
diversas páginas do seu site, sendo possíve passar variáveis de uma 
página para outra, até que a sessão termine, o que pode acontecer por 
expirar o tempo, ou pelo execução do código de encerramento de sessão, 
ou pelo fechamento do navegador do usuário.Essa variável vai ser melhor explicada em um próximo post aqui no manjaphp.blogspot.com- Variável predefinida $GLOBALSA variável $GLOBALS define as variáveis que podem ser acessíveis de qualquer parte do código.Esse
 recurso, pode ser utilizado, com cautela, para tornar variáveis de 
configurações, ou outro valor, disponíveis para as funções que o usuário
 pode criar.