Показать элементы массива в smarty - PullRequest
0 голосов
/ 30 сентября 2011

Я объединил два результата mysql:

while($rs_1 = mysql_fetch_array($r1))
{
    $arr1[] = $rs_1;
}

while($rs_2 = mysql_fetch_array($r2))
{
    $arr2[] = $rs_2;
}

$resN = array_merge($arr1,$arr2);

var_dump($resN) показывает следующий результат:

array(5) { 
    [0] => array(4) { 
        [0] => string(6) "Petric" 
        ["bz_pro_first_name"] => string(6) "Petric" 
        [1] => string(8) "Naughton" 
        ["bz_pro_last_name"] => string(8) "Naughton" 
    } 
    [1] => array(4) { 
        [0] => string(6) "Nitish" 
        ["bz_pro_first_name"] => string(6) "Nitish" 
        [1] => string(12) "Dolakasharia" 
        ["bz_pro_last_name"] => string(12) "Dolakasharia" 
    } 
    [2] => array(4) { 
        [0] => string(6) "Martin" 
        ["bz_pro_first_name"] => string(6) "Martin" 
        [1] => string(3) "Rom" 
        ["bz_pro_last_name"] => string(3) "Rom" 
    } 
    [3] => array(4) { 
        [0] => string(5) "Steve" 
        ["bz_pro_first_name"] => string(5) "Steve" 
        [1] => string(5) "Wough" 
        ["bz_pro_last_name"] => string(5) "Wough" 
    } 
    [4] => array(4) { 
        [0] => string(3) "Liz" 
        ["bz_pro_first_name"] => string(3) "Liz" 
        [1] => string(6) "Hurley" 
        ["bz_pro_last_name"] => string(6) "Hurley" 
    }
}

Я должен отобразить их в smarty так:

assign_values ​​( 'rand_ad', $ resN);

Теперь я попытался отобразить в smarty, как это:

{foreach name=outer item=pro from=$rand_pro}
    {foreach key=key item=item from=$pro}
        {$key}: {$item}<br />
    {/foreach}
{/foreach}

Отображает результаты, но последовательно. Мне нужно извлечь значения в некоторых позициях. Так как же извлечь значения, например, имя, фамилию и т. Д.

Ответы [ 2 ]

4 голосов
/ 30 сентября 2011

Вы не дали пример вывода того, что хотели, поэтому я сделаю предположение. Предполагая, что вы ищете следующий вывод для массива выше:

0: Petric Naughton<br />
1: Nitish Dolakasharia<br />
2: Martin Rom<br />
3: Steve Wough<br />
4: Liz Hurley<br />

Вы могли бы сделать это:

{foreach from=$rand_pro item=pro key=pro_key}
    {$pro_key}: {$pro.bz_pro_first_name} {$pro.bz_pro_last_name}<br />
{/foreach}

Если я предполагаю, что неправильно, пожалуйста, обновите ваш вопрос с выводом, который вы ожидаете быть более ясным.

0 голосов
/ 22 июля 2015

Используйте {foreach} для отображения массива в smarty. а для подключения к базе данных используйте ADODB.

В php файле:

type $smarty->assign->("arrname",$aodDBconn->Execute($sql)).

Это будет работать.

...