Может кто-нибудь сказать мне, как использовать динамические переменные в цикле smarty foreach. Я пытаюсь создать модуль в prestashop, и я очень близок, чтобы сделать это.
вот мой код:
//file name index.php
foreach( $subCategories as $s )
{
$foo = intval($s['id_category']);
$k = new Category($foo);
$var1 = "subSubCategories.$foo";
$var1 = $k->getSubCategories(1);
$smarty->assign(array('foo'.$foo => $var1));
}
//file name:index.tpl
{assign var=foo value=$foo$cat}
//where $cat is a variable that counts the number of categories
{if isset($foo) AND $foo}
{foreach from=$foo item=subCategories name=homesubCategories}
<p>{$subCategories.name}</p>
{/foreach}
{else}
<p>{l s='test failed'}</p>
{/if}
Я исчерпал все свои ресурсы и знания и чувствую себя совершенно беспомощным в этот момент. так что, пожалуйста, помогите мне.
Я пытаюсь создать динамические переменные ('foo'.$foo
, т.е. foo1
, foo2
и т. Д.) В зависимости от количества подкатегорий. Я думаю, что я успешен до этого момента. Теперь перейдем к файлу tpl, здесь я хочу получить доступ к динамически создаваемой переменной (foo2
, foo3
и т. Д.), Используя foreach. Теперь, если я делаю это: {assign var=foo value=$foo3}
Я получаю значения из этой подкатегории, используя тот же цикл foreach. Но когда я делаю это: {assign var=foo value=$foo$catx}
(где $catx
хранит значения для идентификатора категории), происходит сбой. Пожалуйста, помогите.