English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial básico de PHP

Tutorial Avançado PHP

PHP & MySQL

Manual de Referência PHP

Variáveis Super Globais do PHP

As variáveis superglobais no PHP 4.1A variável é ativada após o ponto zero, é uma variável do sistema do PHP, disponível em todo o escopo de um script.

Variáveis Super Globais do PHP

O PHP pré-definiu alguns superglobais (superglobals), o que significa que estão disponíveis em todo o escopo de um script. Você não precisa especificar, pode ser usado em funções e classes.

Lista de variáveis superglobais do PHP:

  • $GLOBALS

  • $_SERVER

  • $_REQUEST

  • $_POST

  • $_GET

  • $_FILES

  • $_ENV

  • $_COOKIE

  • $_SESSION

Nesta seção, explicaremos alguns dos superglobais mais comuns, enquanto outros serão abordados em várias seções subsequentes.

PHP $GLOBALS

O $GLOBALS é um grupo de variáveis superglobais do PHP, acessível em todo o escopo de um script PHP.

O $GLOBALS é um array composto global que contém todas as variáveis. O nome da variável é a chave do array.

A seguir, é introduzido como usar as variáveis superglobais $GLOBALS:

<?php 
$x = 75; 
$y = 25;
 
function addition() 
{ 
    $GLOBALS['z'] = $GLOBALS['x']; + $GLOBALS['y']; 
}
 
addition(); 
echo $z; 
?>
Teste e veja ‹/›

No exemplo acima, z é uma variável superglobal do array $GLOBALS, que também pode ser acessada fora da função.

PHP $_SERVER

O $_SERVER é um array que contém informações como cabeçalhos (header), caminhos (path) e locais de scripts (script locations), entre outros. Este array é criado pelo servidor web. Não há garantia de que todos os servidores forneçam todos os itens; alguns podem ser ignorados ou fornecidos sem estar listados aqui.

A seguir, é demonstrado como usar os elementos do $_SERVER:

<?php 
echo $_SERVER['PHP_SELF'];
echo "<br>";
echo $_SERVER['SERVER_NAME'];
echo "<br>";
echo $_SERVER['HTTP_HOST'];
echo "<br>";
echo $_SERVER['HTTP_REFERER'];
echo "<br>";
echo $_SERVER['HTTP_USER_AGENT'];
echo "<br>";
echo $_SERVER['SCRIPT_NAME'];
?>
Teste e veja ‹/›

A tabela a seguir lista todos os elementos importantes das variáveis $_SERVER:

Elemento/CódigoDescrição
$_SERVER['PHP_SELF']O nome do arquivo do script executando atualmente, relacionado ao diretório raiz do documento. Por exemplo, no endereço http://example.com/test.php/No script foo.bar, o uso de $_SERVER['PHP_SELF'] resultará em /test.php/foo.bar. A constante __FILE__ contém o caminho completo e o nome do arquivo do arquivo atual (por exemplo, contido) A partir do PHP 4.3.0 versão, se o PHP estiver executando em modo de linha de comando, essa variável conterá o nome do script. Nas versões anteriores, essa variável não está disponível.
$_SERVER['GATEWAY_INTERFACE']A versão do padrão CGI usado pelo servidor; por exemplo, "CGI/1.1"。
$_SERVER['SERVER_ADDR']O endereço IP do servidor onde o script está executando.
$_SERVER['SERVER_NAME']O nome do host do servidor onde o script está executando. Se o script estiver executando em um host virtual, o nome é determinado pelo valor configurado pelo host virtual. Por exemplo: www.w3(codebox.com)
$_SERVER['SERVER_SOFTWARE']A string de identificação do servidor, fornecida na cabeçalho da resposta à solicitação. Por exemplo: Apache/2.2.24)
$_SERVER['SERVER_PROTOCOL']O nome e a versão do protocolo de comunicação usado para acessar a página. Por exemplo, "HTTP/1.0".
$_SERVER['REQUEST_METHOD']O método de comunicação usado para acessar a página; por exemplo, "GET", "HEAD", "POST", "PUT".
$_SERVER['REQUEST_TIME']O timestamp do início da solicitação. A partir do PHP 5.1.0 está disponível. (Por exemplo:1377687496)
$_SERVER['QUERY_STRING']query string (cadeia de consulta), se houver, através dela para acessar a página.
$_SERVER['HTTP_ACCEPT']O conteúdo do item Accept na cabeçalho da solicitação atual, se existir.
$_SERVER['HTTP_ACCEPT_CHARSET']O Accept na cabeçalho da solicitação atual-Charset: o conteúdo do item, se existir. Por exemplo: "iso-8859-1,*,utf-8"。
$_SERVER['HTTP_HOST']O conteúdo do item Host: na cabeçalho da solicitação atual, se existir.
$_SERVER['HTTP_REFERER']Guiar o agente de usuário para a página anterior da página atual (se existir). Decidido pelo agente de usuário. Nem todos os agentes de usuário configuram este item, alguns ainda oferecem a função de modificar o HTTP_REFERER. Em resumo, este valor não é confiável.)
$_SERVER['HTTPS']Se o script for acessado via protocolo HTTPS, é definido como um valor não vazio.
$_SERVER['REMOTE_ADDR']O endereço IP do usuário que está navegando na página atual.
$_SERVER['REMOTE_HOST']O nome do host do usuário que está navegando na página atual. A resolução reversa de DNS não depende do $_SERVER['REMOTE_ADDR'].
$_SERVER['REMOTE_PORT']O número da porta usada pelo cliente para se conectar ao servidor web no computador do usuário.
$_SERVER['SCRIPT_FILENAME']O caminho absoluto do script executado atualmente.
$_SERVER['SERVER_ADMIN']Este valor especifica o parâmetro SERVER_ADMIN no arquivo de configuração do servidor Apache. Se o script estiver executando em um host virtual, este valor é o valor do host virtual (por exemplo: someone@w3(codebox.com)
$_SERVER['SERVER_PORT']A porta usada pelo servidor web. O valor padrão é "8"0". Se usar conexão segura SSL, este valor é o porta HTTP configurada pelo usuário.
$_SERVER['SERVER_SIGNATURE']Contém uma string com a versão do servidor e o nome do host virtual.
$_SERVER['PATH_TRANSLATED']O caminho básico do sistema de arquivos onde o script atual está localizado (não o diretório raiz do documento). Isso é o resultado após o mapeamento virtual para o caminho real pelo servidor.
$_SERVER['SCRIPT_NAME']Contém o caminho do script atual. Isso é muito útil quando a página precisa se referir a si mesma. A constante __FILE__ contém o caminho completo e o nome do arquivo do script atual (por exemplo, arquivos incluídos).
$_SERVER['SCRIPT_URI']URI é usado para especificar a página a ser acessada. Por exemplo "/"index.html"。

PHP $_REQUEST

O $_REQUEST do PHP é usado para coletar dados de submissão de formulário HTML.

O exemplo a seguir mostra um formulário com um campo de entrada (input) e um botão de envio (submit): Quando o usuário clicar no botão "Submit" para enviar os dados do formulário, os dados do formulário serão enviados para o arquivo de script especificado no atributo action do rótulo <form>. Neste exemplo, especificamos o arquivo para processar os dados do formulário. Se você quiser que outro arquivo PHP processe os dados, você pode modificar o nome do arquivo de script especificado. Então, podemos usar a variável global super $_REQUEST para coletar dados dos campos input do formulário:

<html>
<body>
 
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];;">
Nome: <input type="text" name="fname">
<input type="submit">
</form>
 
<?php 
$name = $_REQUEST['fname']; 
echo $name; 
?>
 
</body>
</html>
Teste e veja ‹/›

PHP $_POST

O PHP $_POST é amplamente aplicado na coleta de dados de formulários, especificando o atributo no rótulo HTML form: "method="post".

O exemplo a seguir mostra um formulário com um campo de entrada (input) e um botão de envio (submit): Quando o usuário clicar no botão "Submit" para enviar os dados do formulário, os dados do formulário serão enviados para o arquivo de script especificado no atributo action do rótulo <form>. Neste exemplo, especificamos o arquivo para processar os dados do formulário. Se você quiser que outro arquivo PHP processe os dados, você pode modificar o nome do arquivo de script especificado. Então, podemos usar a variável global super $_POST para coletar dados dos campos input do formulário:

<html>
<body>
 
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];;">
Nome: <input type="text" name="fname">
<input type="submit">
</form>
 
<?php 
$name = $_POST['fname']; 
echo $name; 
?>
 
</body>
</html>
Teste e veja ‹/›

PHP $_GET

O PHP $_GET é amplamente aplicado na coleta de dados de formulários, especificando o atributo no rótulo HTML form: "method="get".

$_GET também pode coletar dados enviados na URL.

Suponha que tenhamos uma página HTML de link contendo parâmetros:

<html>
<body>
<a href="test_get.php?subject=PHP&web=oldtoolbag.com">Test $GET</a>
</body>
</html>

Quando o usuário clicar no link "Test $GET", os parâmetros "subject" e "web" será enviada para "test_get.php", você pode usar a variável $_GET no arquivo "test_get.php" para obter esses dados.

O exemplo a seguir mostra o código do arquivo "test_get.php":

<html>
<body>
 
<?php 
echo "Estudo" . $_GET['subject'] . " @ " . $_GET['web'];
?>
 
</body>
</html>
Teste e veja ‹/›

Dica: Se você quiser aprender mais sobre $_POST e $_GET, acesse nosso Formulários PHP Capítulo.