0

我在 smarty 中显示我的数组时遇到问题。它看起来像这样。数组声明:

索引.php:

$rewrites = array(
'en' => array(
'homepage' => 'homepage'
),

'de' => array(
'homepage' => 'zuhause'
),
);

$smarty->assign('rewrites', $rewrites);

在模板文件中:

{$rewrites|@print_r}
{$rewrites[de][homepage]}

第一行按原样打印整个数组,因此分配了数组。但是第二行什么也没显示,为什么?如何正确地做到这一点?如果我这样做 {$rewrites.de.homepage} 它可以工作,但我真的需要像这样声明我的数组值 {$rewrites[de][homepage]} 因为'de'来自其他变量,它定义了当前语言. 例如,我的目标是 {$rewrites[$lang][homepage]}。

4

3 回答 3

0

利用:

{$rewrites[$lang]['homepage']}

您还可以使用:

{$rewrites.{$lang}.homepage}
于 2013-07-05T09:13:46.513 回答
0

试试这个:

{$rewrites.de.homepage}
于 2013-07-08T08:10:58.377 回答
-1

你可以做如下{$rewrites[$lang].homepage}

于 2013-07-05T09:16:55.607 回答