我最近深入研究了wordpress,我注意到了一些非常不寻常的事情。编码时我注意到一个叫$post
变量的特定变量可供我随时操作,就像我的页面一样在wp-includes
,wp-themes
或wp-plugins
文件夹中,我没有调用任何外部页面或功能。
所以我开始开发一个没有wordpress的网站,希望能够理解异常背后的神秘感。
我很感激所有帮助让我理解这种现象。我想在建筑工地上使用这种技术。谢谢......
答案 0 :(得分:3)
这不是一个异常现象。该变量存在于全局范围中,并且正在您提到的任一文件中定义。您可以像
一样轻松完成<强> include.php 强>
<?php
$myGlobal="Testing";
?>
<强> anyfile.php 强>
<?php
include "include.php";
echo $myGlobal;
?>
你可以在你的函数中使用它,只要你引用全局函数,例如
<强> anotherfile.php 强>
<?php
include "include.php";
function test()
{
global $myGlobal;
echo $myGlobal;
}
test();
?>
变量的范围是定义它的上下文。在大多数情况下,所有PHP变量只有一个范围。此单一范围涵盖包括和所需文件
通过在函数中声明(变量)全局,对任一变量的所有引用都将引用全局版本。函数可以操作的全局变量数量没有限制。
通过此PHP Doc一次,您将更好地了解它是如何运作的。
答案 1 :(得分:0)
看看全局变量:
http://php.net/manual/en/language.variables.scope.php
和超全球:
http://www.php.net/manual/en/language.variables.superglobals.php
答案 2 :(得分:0)
的php.ini register_globals = on
$交 $ GET 将在任何地方提供