我有兩個配置文件。第一,這是所謂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
。
我該如何解決這個問題?我做錯了什麼?
謝謝你這是正確的! (儘管如此,我仍然需要等6分鐘才能將其作爲正確的答案) – dcdeiv
是的,並且從「變量變量」手冊中的相關部分:「爲了在數組中使用變量變量,必須解決模糊問題。也就是說,如果你寫$$ a [1],那麼解析器需要知道你是否打算使用$ a [1]作爲變量,或者如果你想要$$ a作爲變量,然後是[1]索引該變量的解析語法是:第一種情況爲$ {$ a [1]},第二種情況爲$ {$ a} [1]。「 – gview
@gview謝謝。我在答案中添加了鏈接。 – fusion3k