Wordpress php页面$ GLOBALS问题

时间:2011-05-09 15:18:29

标签: php wordpress include globals

嗨,我在处理Wordpress中的PHP代码时遇到了问题;

我的aaa.php文件包含代码:

<?php
require_once("lang_file.php");
echo $GLOBALS['general']['username'];
?>

我的lang_file.php包含:

<?php
$language['general']['username'] = 'User';
?>

我的Wordpress页面包含:

<?php
include("aaa.php");
?>

如果我通过浏览器直接访问aaa.php,我会从aaa.php上的echo中收到“User”消息。

如果我使用包含代码访问Wordpress页面,则不会显示任何内容。我已经阅读了这个答案:Does WordPress clear $GLOBALS?

我试图将lang_file.php上的变量定义为$ GLOBALS,但这仍然不起作用。

2 个答案:

答案 0 :(得分:2)

您需要使用

$GLOBALS['language']['general']['username']

代替。

答案 1 :(得分:2)

在PHP中,$GLOBALS是全局定义的所有变量的数组。数组的第一个元素是全局变量名。

因此,要通过$language访问全局变量$GLOBALS,您需要使用$GLOBALS['language']。然后,您可以在$language之后附加任何数组结构。

如果您愿意,也可以通过名称$language直接访问它,方法是在您要使用它之前的代码中添加global $language;