$_SERVER> <Superglobais
Last updated: Fri, 02 Jan 2009

$GLOBALS

$GLOBALSReferencia todas variáveis disponíveis no escopo global

Descrição

Um array associativo contendo referências para todas as variáveis que estão atualmente definidas no escopo global do script. O nome das variáveis são chaves do array.

Exemplos

Exemplo #1 Exemplo da $GLOBALS

<?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();
?>

O exemplo acima irá imprimir algo similar a:

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

Notas

Nota: Esta é uma 'superglobal', ou global automática, variável. Isto simplismente significa que ela está disponível em todos escopos pelo script. Não há necessidade de fazer global $variable; para acessá-la dentro de uma função ou método.

Nota: Disponibilidade da variável
Diferente de todas as outras superglobais, $GLOBALS tem essencialmente sempre estado disponível no PHP.



$_SERVER> <Superglobais
Last updated: Fri, 02 Jan 2009
 
User Contributed Notes
$GLOBALS
Pyornide
16-Oct-2008 06:43
I strongly recommend against using globals at all possible. It's a bad programming practice, and you're better off using references and passing them on construct to use them in the $this context. If you're worried about parameters, you can simply use an associative array to store any passed variables to it. Overall, the main idea is to avoid using globals.

http://www.phpit.net/article/using-globals-php/

Is a good article detailing other reasons why using the global scope is a very bad idea.
David
14-Aug-2008 09:47
Though you can use var_dump to output the value of $GLOBALS.
ravenswd at yahoo dot com
12-Aug-2008 05:02
Keep in mind that $GLOBALS is, itself, a global variable. So code like this won't work:

<?php
   
print '$GLOBALS = ' . var_export($GLOBALS, true) . "\n";
?>

This results in the error message: "Nesting level too deep - recursive dependency?"

$_SERVER> <Superglobais
Last updated: Fri, 02 Jan 2009