我有两个配置文件。第一个,称为configs.php
,包含一个带有一些值的数组:
$welcomeConfigs = [
"title" => "welcome",
"description" => "a description"
];
第二个文件包含configs.php
,并使用其数组生成一些其他变量。第二个文件名为views.php
。
$viewConfigs = VIEW . 'Configs';
$pathToViewConfigs = VIEW . '/configs.php';
include($pathToViewConfigs);
var_dump($$viewConfigs);
在index.php
:
define("VIEW", "welcome");
include('views.php');
我需要存储在$title
变量中,例如,关联数组的值,但是当我尝试这样做时,没有任何反应。我尝试使用var_dump检查语法是否正确,并使用外部小提琴来检查是否有错误,但实际上没有任何错误。
输入var_dump($$viewConfigs);
时输出为{ ["title"]=> string(7) "welcome" ["description"]=> string(13) "a description" }
但是当我输入var_dump($$viewConfigs['title']);
时,输出为NULL
。
我该如何解决这个问题?我做错了什么?
答案 0 :(得分:2)
您必须使用以下语法:
var_dump( ${$viewConfigs}['title'] );
将$viewConfigs
解释为变量名称。表单$$viewConfigs['title']
将变量名称解释为内容od $viewConfigs['title']
,不存在。
我希望我已经清楚了。
(编辑:)在PHP Official site
上查看有关变量变量的更多信息