2011-05-09 29 views
0

嗨我有一个问题,同时处理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中的回显中获得“用户”消息。

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

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

回答

2

你需要使用

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

代替。

+0

是的,改变了lang_file.php,现在它工作:D – gmarco 2011-05-09 15:32:53

2

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

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

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