Php $GLOBALS[“test”]和global$test之间有什么区别吗?

Php $GLOBALS[“test”]和global$test之间有什么区别吗?,php,global,Php,Global,有人能告诉我他们之间的基本区别吗 $GLOBALS["test"] and global $test 如果我使用$GLOBALS[test]而不是$u SESSION['test',这有意义吗 如果我使用 $GLOBALS[test]而不是 $\会话[“测试”] 不,这与全局可用的变量不同 $GLOBALS 包含 对所有变量的引用 当前在全局范围内定义 这是剧本的一部分。变量名是 数组的键 说明: $GLOBALS是整个脚本中可用的关联数组,不需要使用global$test 注意:这是一个“超

有人能告诉我他们之间的基本区别吗

$GLOBALS["test"] and global $test
如果我使用$GLOBALS[test]而不是$u SESSION['test',这有意义吗

如果我使用 $GLOBALS[test]而不是 $\会话[“测试”]

不,这与全局可用的变量不同

$GLOBALS

包含 对所有变量的引用 当前在全局范围内定义 这是剧本的一部分。变量名是 数组的键

说明:

$GLOBALS是整个脚本中可用的关联数组,不需要使用global$test

注意:这是一个“超全局”,或 自动全局变量。这 简单地说,它可以在 脚本中的所有作用域。那里 不需要做全局$变量;到 在函数或方法中访问它

如果我使用 $GLOBALS[test]而不是 $\会话[“测试”]

不,这与全局可用的变量不同

$GLOBALS

包含 对所有变量的引用 当前在全局范围内定义 这是剧本的一部分。变量名是 数组的键

说明:

$GLOBALS是整个脚本中可用的关联数组,不需要使用global$test

注意:这是一个“超全局”,或 自动全局变量。这 简单地说,它可以在 脚本中的所有作用域。那里 不需要做全局$变量;到 在函数或方法中访问它


$GLOBALS[test]和global$test之间没有区别。两者都是纯粹的邪恶,不应该被使用

他们为什么邪恶? 突然间,你的代码变得依赖于某种外部环境,它的可移植性大大下降。它需要在某处定义一些变量,没有人知道在哪里,有一些值,没有人知道正确的值是什么。 假设$test应该存储关于某个东西的信息,比如:球的数量。一切都很好,直到有了这样一个变量,它存储了它应该存储的东西。但是,如果您决定删除该变量或将其用于其他目的,会发生什么情况?呸,致命的错误不知从哪里冒出来!你不知道发生了什么,一切都很顺利,你只是改变了一个变量的值,一切都崩溃了。
$GLOBALS[test]和global$test之间没有区别。两者都是纯粹的邪恶,不应该被使用

他们为什么邪恶? 突然间,你的代码变得依赖于某种外部环境,它的可移植性大大下降。它需要在某处定义一些变量,没有人知道在哪里,有一些值,没有人知道正确的值是什么。 假设$test应该存储关于某个东西的信息,比如:球的数量。一切都很好,直到有了这样一个变量,它存储了它应该存储的东西。但是,如果您决定删除该变量或将其用于其他目的,会发生什么情况?呸,致命的错误不知从哪里冒出来!你不知道发生了什么,一切都很顺利,你只是改变了一个变量的值,一切都崩溃了。
@PHP Prabhu:实际上,任何PHP页面。例如$\u POST、$\u GET等是可以随时使用的超级全局数组:@PHP Prabhu:any PHP页面。例如$\u POST、$\u GET等,您可以随时使用超级全局数组:您必须将其与register globals混淆,从而宣布它们是邪恶的。我知道register\u globals是什么,全局变量是什么。这两件事都是邪恶的。请仔细解释它到底是邪恶的原因。你能推荐一种更好的方法来存储数据库详细信息,如主机名和数据库名吗?你一定把它与register globals混淆了,从而宣布它们是邪恶的。我知道register\u globals是什么,全局变量是什么。这两件事都是有害的。请仔细解释为什么它是有害的。你能推荐一种更好的方法来存储数据库详细信息,如主机名和数据库名吗。