Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP$\u全局->;找回价值?_Php_Globals - Fatal编程技术网

PHP$\u全局->;找回价值?

PHP$\u全局->;找回价值?,php,globals,Php,Globals,假设我有一个代码,在启动时执行如下操作: if (!isset($_GLOBALS['something'])){ getAndWriteToGlobals($x, $y) } 这显然会转到getAndWriteToGlobals函数,它只做很少的事情,并将另一个数据放入$\u GLOBALS['something'][$ee]=$value->中。它使用print\u r正确地工作(我打印了整个$\u GLOBALS['something']),所有东西都在那里 我遇到的问题是,当程

假设我有一个代码,在启动时执行如下操作:

if (!isset($_GLOBALS['something'])){
    getAndWriteToGlobals($x, $y)
}
这显然会转到
getAndWriteToGlobals
函数,它只做很少的事情,并将另一个数据放入
$\u GLOBALS['something'][$ee]=$value->
中。它使用
print\u r
正确地工作(我打印了整个
$\u GLOBALS['something']
),所有东西都在那里

我遇到的问题是,当程序从这个函数返回时,我试图在另一个类似这样的变量中获取数组

$var = $_GLOBALS['something'];
在本例中,$var在打印结果中不包含任何内容(甚至不为null),
count($var)
返回
0
。 我错过了什么

谢谢

编辑:


$\u GLOBALS
$GLOBALS

顺便说一下,如果您试图创建全局变量,请确保语法:

// in somewhere (i think very first of master include file)
global $_GLOBALS;
$_GLOBALS['foo'] = 123;
// more code...

// and in function(s)
function getAndWriteToGlobals(...
    global $_GLOBALS;
    // do stuff with $_GLOBALS

PS:我不建议将变量命名为类似PHP结构的样式。我更喜欢将这些变量命名为
$\u globals
$globals
$globals['globals']
$globals['cfg']
等)。

测试变量内部内容的最佳选择是。尝试使用
var_dump($_GLOBALS['something'])
在函数之前和之后查看函数是否更改。如果将其取消设置,您唯一能做的就是向我们显示
getAndWriteToGlobals
函数的内容。您不应该在应用程序中使用全局变量。这是一个痛苦世界的开端。你是说超全球的
$GLOBALS
?它没有下划线。是的,没有下划线。PHP如果不是不一致的话就什么都不是。$GLOBALS不是下划线。
// in somewhere (i think very first of master include file)
global $_GLOBALS;
$_GLOBALS['foo'] = 123;
// more code...

// and in function(s)
function getAndWriteToGlobals(...
    global $_GLOBALS;
    // do stuff with $_GLOBALS