嗨,我在处理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,但这仍然不起作用。
答案 0 :(得分:2)
您需要使用
$GLOBALS['language']['general']['username']
代替。
答案 1 :(得分:2)
在PHP中,$GLOBALS
是全局定义的所有变量的数组。数组的第一个元素是全局变量名。
因此,要通过$language
访问全局变量$GLOBALS
,您需要使用$GLOBALS['language']
。然后,您可以在$language
之后附加任何数组结构。
如果您愿意,也可以通过名称$language
直接访问它,方法是在您要使用它之前的代码中添加global $language;
。