Variáveis
predefinidas
Variáveis
do
servidor
:
$_SERVER
Nota
:
Introduzida
na
versão
4.1.0
.
Em
versões
anteriores
,
use
$HTTP_SERVER_VARS
.
$_SERVER
é
um
array
contendo
informações
como
headers
,
caminhos
e
localizações
do
script
.
Os
itens
deste
array
são
criados
pelo
servidor
web
.
Não
há
garantias
que
todos
os
servidores
web
geram
todas
elas
:
alguns
servidores
talvez
omitam
algumas
ou
geram
outras
que
não
estão
listadas
aqui
.
Mesmo
assim
,
um
grande
número
dessas
variáveis
estão
de
acordo
com
a
especificação
CGI
1.1
,
então
você
pode
esperar
encontrá-las
nesse
array
.
Esta
é
uma
variável
'
superglobal
'
,
ou
automaticamente
global
.
Isto
significa
que
ela
é
disponível
em
todos
os
escopos
(
níveis
)
de
um
script
.
Você
não
precisa
fazer
um
global
$_SERVER
;
para
pode
acessá-la
dentro
de
funções
ou
métodos
,
como
era
necessário
com
$HTTP_SERVER_VARS
.
$HTTP_SERVER_VARS
contém
a
mesmas
informações
,
mas
ela
não
é
uma
superglobal
.(
Note
que
$HTTP_SERVER_VARS
e
$_SERVER
são
variáveis
diferentes
como
também
o
PHP
as
manipula
diferentemente
)
Se
a
diretiva
register_globals
está
ativa
,
então
essas
variáveis
tornam-se
disponíveis
no
escopo
global
do
script
(
por
exemplo
,
separados
dos
arrays
$_SERVER
e
$HTTP_SERVER_VARS
.
Para
maiores
informações
,
veja
o
capítulo
de
segurança
entitulado
Utilizando
registradores
globais
.
Estas
variáveis
globais
individuais
não
são
superglobais
.
Você
poderá
ou
não
encontrar
qualquer
um
dos
seguintes
elementos
dentro
de
$_SERVER
.
Note
que
poucos
(
ou
nenhum
)
deles
estão
disponíveis
(ou
não
terão
qualquer
sentido
)
se
você
estiver
rodando
o
PHP
na
linha
de
comando
.
- '
PHP_SELF
'
-
O
nome
do
arquivo
do
script
atualmente
em
uso
,
relativo
ao
document
root
.
Por
exemplo
,
$_SERVER[
'PHP_SELF'
]
em
um
script
com
o
endereço
http
:
/
/example.com
/
test.php
/
foo.bar
pode
ser
/
test.php
/
foo.bar
.
Se
estiver
rodando
o
PHP
em
linha
de
comando
,
esta
variável
não
está
disponível
.
- '
argv
'
-
Array
de
argumentos
passado
para
o
script
.
Quando
o
script
é
executado
na
linha
de
comando
,
isto
permite
um
acesso
aos
parâmetros
de
linha
de
comando
no
estilo
do
C
.
Quando
chamado
via
método
GET
,
ele
conterá
a
query
string
.
- '
argc
'
-
Contém
o
número
de
parâmetros
da
linha
de
comando
passados
para
o
script
(
se
executando
da
linha
de
comando
)
.
- '
GATEWAY_INTERFACE
'
-
O
número
de
revisão
da
especificação
CGI
que
o
servidor
está
utilizando
,
por
exemplo
:
'
CGI
/
1.1
'
.
- '
SERVER_NAME
'
-
O
nome
host
do
servidor
onde
o
script
atual
é
executado
.
Se
o
script
está
rodando
em
um
host
virtual
,
este
será
o
valor
definido
para
aquele
host
virtual
.
- '
SERVER_SOFTWARE
'
-
A
string
de
identificação
do
servidor
,
fornecida
nos
headers
quando
respondendo
a
requests
.
- '
SERVER_PROTOCOL
'
-
Nome
e
número
de
revisão
do
protocolo
de
informação
pelo
qual
a
página
foi
requerida
,
por
exemplo
'
HTTP
/
1.0
'
;
- '
REQUEST_METHOD
'
-
Contém
o
método
de
request
utilizando
para
acessar
a
página
.
Geralmente
'
GET
'
,
'
HEAD
'
,
'
POST
'
ou
'
PUT
'
.
- '
QUERY_STRING
'
-
A
query
string
(
string
de
solicitação
)
,
se
houver
,
pela
qual
a
página
foi
acessada
.
- '
DOCUMENT_ROOT
'
-
O
diretório
raiz
sob
onde
o
script
atual
é
executado
,
como
definido
no
arquivos
de
configuração
do
servidor
.
- '
HTTP_ACCEPT
'
-
O
conteúdo
do
header
Accept
:
da
requisição
atual
,
se
houver
.
- '
HTTP_ACCEPT_CHARSET
'
-
O
conteúdo
do
header
Accept-Charset
:
da
requisição
atual
,
se
houver
.
Exemplo
:
'
iso-8859-1,*,utf-8
'
.
- '
HTTP_ACCEPT_ENCODING
'
-
O
conteúdo
do
header
Accept-Encoding
:
da
requisição
atual
,
se
houver
.
Exemplo
:
'
gzip
'
.
- '
HTTP_ACCEPT_LANGUAGE
'
-
O
conteúdo
do
header
Accept-Language
:
da
requisição
atual
,
se
houver
.
Exemplo
'
en
'
.
- '
HTTP_CONNECTION
'
-
O
conteúdo
do
header
Connection
:
da
requisição
atual
,
se
houver
.
Exemplo
:
'
Keep-Alive
'
.
- '
HTTP_HOST
'
-
O
conteúdo
do
header
Host
:
da
requisição
atual
,
se
houver
.
- '
HTTP_REFERER
'
-
O
endereço
da
página
(
se
houver
)
através
da
qual
o
agente
do
usuário
acessou
a
página
atual
.
Essa
diretiva
é
informada
pelo
agente
do
usuário
.
Nem
todos
os
browsers
geram
esse
header
,
e
alguns
ainda
possuem
a
habilidade
de
modificar
o
conteúdo
do
HTTP_REFERER
como
recurso
.
Em
poucas
palavras
,
não
é
confiável
.
- '
HTTP_USER_AGENT
'
-
O
conteúdo
do
header
User_Agent
:
da
requisição
atual
,
se
houver
.
É
uma
string
denotando
o
agente
de
usuário
pelo
qual
a
página
é
acessada
.
Um
exemplo
típico
é
:
Além
de
outras
coisas
,
você
pode
utilizar
este
valor
com
get_browser(
)
para
personalizar
a
geração
de
suas
páginas
para
as
capacidades
do
agente
do
usuário
.
- '
REMOTE_ADDR
'
-
O
endereço
IP
de
onde
o
usuário
está
visualizado
a
página
atual
.
- '
REMOTE_PORT
'
-
A
porta
TCP
na
máquina
do
usuário
utilizada
para
comunicação
com
o
servidor
web
.
- '
SCRIPT_FILENAME
'
-
O
caminho
absoluto
o
script
atualmente
em
execução
.
- '
SERVER_ADMIN
'
-
O
valor
fornecido
pela
diretiva
SERVER_ADMIN
(
do
Apache
)
no
arquivo
de
configuração
do
servidor
.
Se
o
script
está
sendo
executado
em
um
host
virtual
,
este
será
os
valores
definidos
para
aquele
host
virtual
.
- '
SERVER_PORT
'
-
A
porta
na
máquina
servidora
utilizada
pelo
servidor
web
para
comunicação
.
Como
default
,
este
valor
é
'
80
'
.
Utilizando
SSL
,
entretanto
,
mudará
esse
valor
para
a
porta
de
comunicação
segura
HTTP
.
- '
SERVER_SIGNATURE
'
-
String
contendo
a
versão
do
servidor
e
nome
do
host
virtual
que
é
adicionado
às
páginas
geradas
no
servidor
,
se
ativo
.
- '
PATH_TRANSLATED
'
-
O
caminho
real
do
script
relativo
ao
sistema
de
arquivos
(
não
o
document
root)
,
depois
realizou
todos
os
mapeamentos
de
caminhos
(virtual-to-real
)
.
- '
SCRIPT_NAME
'
-
Contém
o
caminho
completo
do
script
atual
.
Útil
para
páginas
que
precisam
apontar
para
elas
mesmas
(
dinamicamente
)
.
- '
REQUEST_URI
'
-
O
URI
fornecido
para
acessar
a
página
atual
,
por
exemplo
,
'
/
index.html
'
.
- '
PHP_AUTH_USER
'
-
Quando
executando
sob
o
Apache
como
módulo
e
fazendo
autenticaçào
HTTP
,
esta
variável
estará
definida
com
o
username
fornecido
pelo
usuário
.
- '
PHP_AUTH_PW
'
-
Quando
executando
sob
o
Apache
como
módulo
e
fazendo
autenticaçào
HTTP
,
esta
variável
estará
definida
com
a
senha
fornecida
pelo
usuário
.
- '
PHP_AUTH_TYPE
'
-
Quando
executando
sob
o
Apache
como
módulo
e
fazendo
autenticaçào
HTTP
,
esta
variável
estará
definida
com
o
tipo
de
autenticação
utilizado
.
Variáveis
de
ambiente
:
$_ENV
Nota
:
Introduzida
na
versão
4.1.0
.
Em
versões
anteriores
,
utilize
$HTTP_ENV_VARS
.
Estas
variáveis
são
importadas
dentro
no
espaço
global
do
PHP
do
ambiente
sob
qual
o
interpretador
do
PHP
está
rodando
.
Muitos
são
são
criados
no
shell
(
terminal
)
sob
o
qual
o
PHP
é
executado
e
sistemas
diferentes
normalmente
utilizam
vários
sabores
de
shells
,
e
uma
lista
definitiva
é
impossível
.
Verifique
a
documentação
de
sua
shell
para
a
lista
de
variáveis
ambiente
definidas
.
Outras
variáveis
ambiente
incluem
as
variáveis
CGI
,
informadas
aqui
independente
do
PHP
estar
rodando
como
um
módulo
do
servidor
ou
como
processador
CGI
.
Esta
é
uma
variável
'
superglobal
'
,
ou
automaticamente
global
.
Isto
significa
que
ela
é
disponível
em
todos
os
escopos
(
níveis
)
de
um
script
.
Você
não
precisa
fazer
um
global
$_ENV
;
para
pode
acessá-la
dentro
de
funções
ou
métodos
,
como
era
necessário
com
$HTTP_ENV_VARS
.
$HTTP_ENV_VARS
contém
a
mesma
informação
,
mas
não
é
uma
superglobal
.
(
Note
que
HTTP_ENV_VARS
e
$_ENV
são
variáveis
diferentes
como
também
o
PHP
as
manipula
diferentemente
)
Se
a
diretiva
register_globals
está
ativa
,
então
essas
variáveis
tornam-se
disponíveis
no
escopo
global
do
script
(
por
exemplo
,
separados
dos
arrays
$_ENV
e
$HTTP_ENV_VARS
.
Para
maiores
informações
,
veja
o
capítulo
de
segurança
entitulado
Utilizando
registradores
globais
.
Estas
variáveis
globais
individuais
não
são
superglobais
.
Cookies
HTTP
:
$_COOKIE
Nota
:
Introduzida
na
versão
4.1.0
.
Em
versões
anteriores
,
utilize
$HTTP_COOKIE_VARS
.
Contém
um
array
associativo
de
variáveis
passas
para
o
script
atual
através
de
cookies
HTTP
.
Esta
é
uma
variável
'
superglobal
'
,
ou
automaticamente
global
.
Isto
significa
que
ela
é
disponível
em
todos
os
escopos
(
níveis
)
de
um
script
.
Você
não
precisa
fazer
um
global
$_COOKIE
;
para
pode
acessá-la
dentro
de
funções
ou
métodos
,
como
era
necessário
com
$HTTP_COOKIE_VARS
.
$HTTP_COOKIE_VARS
contém
as
mesmas
informações
,
mas
não
é
uma
superglobal
.
(
Note
que
HTTP_COOKIE_VARS
e
$_COOKIE
são
variáveis
diferentes
como
também
o
PHP
as
manipula
diferentemente
)
Se
a
diretiva
register_globals
está
ativa
,
então
essas
variáveis
tornam-se
disponíveis
no
escopo
global
do
script
(
por
exemplo
,
separados
dos
arrays
$_COOKIE
e
$HTTP_COOKIE_VARS
.
Para
maiores
informações
,
veja
o
capítulo
de
segurança
entitulado
Utilizando
registradores
globais
.
Estas
variáveis
globais
individuais
não
são
superglobais
.
Variáveis
HTTP
GET
:
$_GET
Nota
:
Introduzida
na
versão
4.1.0
.
Em
versões
anteriores
,
use
$HTTP_GET_VARS
.
Contém
um
array
associativo
de
variáveis
passadas
para
o
script
atual
através
do
método
HTTP
GET
.
Esta
é
uma
variável
'
superglobal
'
,
ou
automaticamente
global
.
Isto
significa
que
ela
é
disponível
em
todos
os
escopos
(
níveis
)
de
um
script
.
Você
não
precisa
fazer
um
global
$_GET
;
para
pode
acessá-la
dentro
de
funções
ou
métodos
,
como
era
necessário
com
$HTTP_GET_VARS
.
$HTTP_GET_VARS
contém
as
mesmas
informações
,
mas
não
é
uma
superglobal
.
(
Note
que
HTTP_GET_VARS
e
$_GET
são
variáveis
diferentes
como
também
o
PHP
as
manipula
diferentemente
)
Se
a
diretiva
register_globals
está
ativa
,
então
essas
variáveis
tornam-se
disponíveis
no
escopo
global
do
script
(
por
exemplo
,
separados
dos
arrays
$_GET
e
$HTTP_GET_VARS
.
Para
maiores
informações
,
veja
o
capítulo
de
segurança
entitulado
Utilizando
registradores
globais
.
Estas
variáveis
globais
individuais
não
são
superglobais
.
Variaveis
HTTP
POST
:
$_POST
Nota
:
Introduzida
na
versão
4.1.0
.
Em
versões
anteriores
,
use
$HTTP_POST_VARS
.
Contém
um
array
associativo
de
variáveis
passadas
para
o
script
atual
através
do
método
HTTP
POST
.
Esta
é
uma
variável
'
superglobal
'
,
ou
automaticamente
global
.
Isto
siginifica
que
ela
é
disponível
em
todos
os
escopos
(
níveis
)
de
um
script
.
Você
não
precisa
fazer
um
global
$_POST
;
para
pode
acessá-la
dentro
de
funções
ou
métodos
,
como
era
necessário
com
$HTTP_POST_VARS
.
$HTTP_POST_VARS
contém
as
mesmas
informações
,
mas
não
é
uma
superglobal
.
(
Note
que
HTTP_POST_VARS
e
$_POST
são
variáveis
diferentes
como
também
o
PHP
as
manipula
diferentemente
)
Se
a
diretiva
register_globals
está
ativa
,
então
essas
variáveis
tornam-se
disponíveis
no
escopo
global
do
script
(
por
exemplo
,
separados
dos
arrays
$_POST
e
$HTTP_POST_VARS
.
Para
maiores
informações
,
veja
o
capítulo
de
segurança
entitulado
Utilizando
registradores
globais
.
Estas
variáveis
globais
individuais
não
são
superglobais
.
Variáveis
de
upload
de
arquivos
HTTP
:
$_FILES
Nota
:
Introduzida
na
versão
4.1.0
.
Em
versões
anteriores
,
use
$HTTP_POST_FILES
.
Contém
um
array
associativo
dos
itens
carregador
no
script
atual
através
do
método
HTTP
POST
.
Esta
é
uma
variável
'
superglobal
'
,
ou
automaticamente
global
.
Isto
significa
que
ela
é
disponível
em
todos
os
escopos
(
níveis
)
de
um
script
.
Você
não
precisa
fazer
um
global
$_FILES
;
para
pode
acessá-la
dentro
de
funções
ou
métodos
,
como
era
necessário
com
$HTTP_FILES_VARS
.
$HTTP_POST_FILES
contém
as
mesmas
informações
,
mas
não
é
uma
superglobal
.
Se
a
diretiva
register_globals
está
ativa
,
então
essas
variáveis
tornam-se
disponíveis
no
escopo
global
do
script
(
por
exemplo
,
separados
dos
arrays
$_FILES
e
$HTTP_POST_FILES
.
Para
maiores
informações
,
veja
o
capítulo
de
segurança
entitulado
Utilizando
registradores
globais
.
Estas
variáveis
globais
individuais
não
são
superglobais
.
Variáveis
da
requisição
:
$_REQUEST
Nota
:
Introduzida
na
versão
4.1.0
.
Não
há
array
equivalente
em
versões
anteriores
.
Contém
um
array
associativo
com
os
conteúdos
de
$_GET
,
$_POST
,
$_COOKIE
e
$_FILES
.
Esta
é
uma
variável
'
superglobal
'
,
ou
automaticamente
global
.
Isto
significa
que
ela
é
disponível
em
todos
os
escopos
(
níveis
)
de
um
script
.
Você
não
precisa
fazer
um
global
$_REQUEST
;
para
pode
acessá-la
dentro
de
funções
ou
métodos
.
Se
a
diretiva
register_globals
está
ativa
,
então
essas
variáveis
tornam-se
disponíveis
no
escopo
global
do
script
(
por
exemplo
,
separados
dos
arrays
$_REQUEST
.
Para
maiores
informações
,
veja
o
capítulo
de
segurança
entitulado
Utilizando
registradores
globais
.
Estas
variáveis
globais
individuais
não
são
superglobais
.
Variáveis
de
sessão
:
$_SESSION
Nota
:
Introduzida
na
versão
4.1.0
.
Em
versões
anteriores
,
use
$HTTP_SESSION_VARS
.
Contém
um
array
associativo
das
variáveis
de
sessão
disponíveis
para
o
script
atual
.
Veja
a
documentação
das
funções
de
Sessões
para
maiores
informações
de
como
utilizá-las
.
Esta
é
uma
variável
'
superglobal
'
,
ou
automaticamente
global
.
Isto
siginifica
que
ela
é
disponível
em
todos
os
escopos
(
níveis
)
de
um
script
.
Você
não
precisa
fazer
um
global
$_SESSION
;
para
pode
acessá-la
dentro
de
funções
ou
métodos
,
como
era
necessário
com
$HTTP_SESSION_VARS
.
$HTTP_SESSION_VARS
contém
as
mesmas
informações
,
mas
não
é
uma
superglobal
.
Se
a
diretiva
register_globals
está
ativa
,
então
essas
variáveis
tornam-se
disponíveis
no
escopo
global
do
script
(
por
exemplo
,
separados
dos
arrays
$_SESSION
e
$HTTP_SESSION_VARS
Para
maiores
informações
,
veja
o
capítulo
de
segurança
entitulado
Utilizando
registradores
globais
.
Estas
variáveis
globais
individuais
não
são
superglobais
.
Variaveis
globais
:
$GLOBALS
Nota:
$GLOBALS
foi disponibilizada desde a versão 3.0.0.
Um
array
associativo
contendo
referências
para
todas
as
variáveis
atualmente
definidas
no
escopo
global
do
script
.
Os
nomes
das
variáveis
são
as
chaves
do
array
.
Esta
é
uma
variável
'
superglobal
'
,
ou
automaticamente
global
.
Isto
significa
que
ela
é
disponível
em
todos
os
escopos
(
níveis
)
de
um
script
.
Você
não
precisa
fazer
um
global
$GLOBALS
;
para
pode
acessá-la
dentro
de
funções
ou
métodos
.
A
mensagem
de
erro
anterior
:
$php_errormsg
$php_errormsg
é
uma
variável
contendo
o
texto
da
última
mensagem
de
erro
gerada
pelo
PHP
.
Esta
variável
somente
está
disponível
no
escopo
em
que
o
erro
ocorreu
,
e
somente
se
a
opção
de
configuração
track_errors
está
ativa
(
seu
default
é
off
)
.