Variáveis de fontes externas
   
   
    Cookies HTTP
    
     O PHP suporta transparentemente cookies HTTP como os definidos pela » RFC 6265. Cookies são um
     mecanismo o armazenamento de dados no navegador,
     rastreando e identificando o retorno de usuários. Você pode definir cookies com
     a função setcookie(). Cookies são parte do
     cabeçalho HTTP, então a função SetCookie precisa ser chamada antes
     de qualquer saída ser enviada ao navegador. Esta é a mesma restrição
     da função header(). Dados de cookies
     estão disponíveis nos arrays de dados de cookies apropriados,
     como $_COOKIE e também em $_REQUEST.
     Veja o manual de setcookie() para mais detalhes e
     exemplos.
    
    Nota: 
     
      A partir dos PHP 7.2.34, 7.3.23 e 7.4.11, respectivamente, os nomes
      dos cookies recebidos não são decodificados (a partir do formato URL) por razões de segurança.
     
    
    
     Se a intenção for atribuir vários valores a uma única variável do cookie, deve-se
     atribuí-la como um array:
    
    
    
     Isso criará dois cookies separados embora MyCookie será
     agora um único array no script. Se a intenção for definir apenas um cookie
     com vários valores, pode-se utilizar serialize() ou
     explode() nos valores primeiro.
    
    
     Note que um cookie substituirá um anterior com o mesmo
     nome no navegador, a menos que o caminho ou o domínio seja diferente. Portanto,
     para uma aplicação de carrinho de compras, pode-se manter um contador
     e repassá-lo:
    
    
     Exemplo #4 Um exemplo de setcookie()
     
<?php
if (isset($_COOKIE['count'])) {
    $count = $_COOKIE['count'] + 1;
} else {
    $count = 1;
}
setcookie('count', $count, time()+3600);
setcookie("Cart[$count]", $item, time()+3600);
?>
      
     
    
   
    Pontos em nomes de variáveis recebidas
    
     Normalmente o PHP não altera o nome de variáveis quando elas
     são passadas para um script. Entretanto, deve ser notado que o
     ponto (ponto final) não é um caractere válido em nome de
     variável do PHP. Para ilustrar o motivo, veja o seguinte exemplo:
     
<?php
$varname.ext;  /* nome de variável inválido */
?>
      
     Dessa forma, o interpretador entende isso como uma variável com nome de
     
$varname, seguida do operador de concatenação
     de strings, seguida de uma string crua (uma string não delimitada que
     não bate com nenhuma palavra-chave ou reservada) 'ext'. Obviamente,
     isso não tem os resultados pretendidos.
    
    
     Nessa situação, é importante notar que o PHP
     substituirá automaticamente qualquer ponto nos nomes de variáveis recebidas por
     sublinhados.
    
    
   
    Determinando o tipo das variáveis
    
     Como o PHP determina os tipos de variáveis e faz conversões
     (geralmente) quando necessário, nem sempre é óbvio o tipo de uma variável
     em cada momento. O PHP inclui várias funções
     que permitem determinar qual o tipo de uma variável, por exemplo:
     gettype(), is_array(),
     is_float(), is_int(),
     is_object(),e
     is_string(). Veja também o capítulo sobre
     Tipos.
    
    
     Pelo fato do HTTP ser um protocolo de texto, a maioria, se não todo o conteúdo presente nos
     arrays superglobais
     como $_POST e $_GET permanecerão
     como strings. O PHP não tentará converter valores para um tipo específico.
     No exemplo abaixo, $_GET["var1"] conterá a
     string "null" e $_GET["var2"] conterá a string "123".
     
/index.php?var1=null&var2=123