Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Felipesudrj

[Resolvido] qual a função de $globals

Recommended Posts

pessoal boa noite sou novo em php e tenho algumas duvidas de coisas que nunca usei mais ja vi em sistemas de outros e não sei exatamente o que faz..alguem com mais experiencia pode me clarear o conhecimento?

 

 

qual a função de $globals no php alguem pode me citar um exemplo?

 

e qual a diferença entre $globals e global....

 

outra duvida é para que as vezes o pessoal coloca um @antes de uma variavel?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Segundo a documentação do PHP:

$GLOBALS — Referencia todas variáveis disponíveis no escopo global

 

Em outras palavras, ela é um array associativo que armazena os valores de todas as variáveis globais do código.

 

Exemplo:

<?php
function test() {
   $foo = "local variable";

   echo '$foo in global scope: ' . $GLOBALS["foo"] . "\n";
   echo '$foo in current scope: ' . $foo . "\n";
}

$foo = "Example content";
test();
?>

Saída:

$foo in global scope: Example content $foo in current scope: local variable

e qual a diferença entre $globals e global....

Logo, a relação entre uma variável global e $GLOBALS é uma relação de parte para todo, $GLOBALS contém variáveis globais.

 

outra duvida é para que as vezes o pessoal coloca um @antes de uma variavel?

 

Isso na verdade é uma péssima prática. A colocação do '@' antes dos nomes de variáveis e funções suprime a emissão de erros.

Normalmente, quando fazemos algo como:

$id = $_GET['id'];

e não existe um índice 'id' no array $_GET, uma nota (notice) é emitida com uma mensagem mais ou menos assim:

Undefined index 'id' on $_GET on file.php line xxx

 

Para evitar o aparecimento dessa nota, normalmente faz-se:

$id = @$_GET['id'];

Dessa forma, se não há o índice 'id', nenhuma nota é emitida.

 

Entretanto, suprimir erros é como varrer a sujeira pra de baixo do tapete: uma hora ela vai para algum lugar indesejado.

O que você deve fazer é isso aqui:

$id = isset($_GET['id']) ? $_GET['id'] : null;

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.