Получить доступ к вложенному ассоциативному массиву в шаблоне smarty

У меня есть массив PHP с именем consolidatedReviewData, который выглядит так:

Array
(
    [consolidatedData] => Array
        (
            [0] => Array
                (
                    [a_productidentification] => 5920
                    [avg_rating] => 4.0000
                    [no_reviews] => 2
                )

        )

)

и я присваиваю его переменной smarty следующим образом:

self::$smarty->assign('cosolidatedReviews', $consolidatedReviewData);

Теперь мой вопрос, как я могу получить прямой доступ avg_rating внутри.tpl?

Что-то вроде:

{$consolidatedReviewData->consolidatedData->0->avg_rating}

1 ответ

Решение

Используйте точки для доступа к элементам массива:

{$consolidatedReviews.consolidatedData.0.avg_rating}

Это то же самое, что и в PHP:

echo $consolidatedReviews['consolidatedData'][0]['avg_rating'];

-> для доступа к свойствам объекта.

См. http://www.smarty.net/docs/en/language.syntax.variables.tpl

Другие вопросы по тегам