ホームページ > バックエンド開発 > PHPチュートリアル > Smarty でループ内に割り当てる方法

Smarty でループ内に割り当てる方法

WBOY
リリース: 2016-06-13 13:16:19
オリジナル
841 人が閲覧しました

Smartyのループで代入する方法
これはsmartyのコードです

PHPコード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
$i=0;
$db->Query("brand_list","select * from `category` where `pid`='2' order by id");//总共有4个结果
while($array = $db->GetArray("brand_list")){
    $brand_list[] = $array;
    $i++;
    $wf->assign("i",$i);
    //echo $i.',';
}
$wf->assign('brand_list',$brand_list);

ログイン後にコピー


これはテンプレートのコードです
HTML コード
<!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

-->
{foreach from=$brand_list item=list}
    {$i},
{/foreach} 

ログイン後にコピー


これを php でエコーすると、正しい結果が出力されます: 1,2,3,4,
しかし、テンプレートでは 4 が出力されます。 4 ,4,4,

テンプレートで自己追加を実装できることはわかっています。これはほんの一例です。
私が聞きたいのは、テンプレートが私が望むものを正常に出力できるように、PHPループ内でどのように代入するかです。

表現が十分に明確かどうかわかりません。

-----解決策---------
$i=0;
$db->Query("brand_list","select * from `category` where `pid`='2' order by id");//合計 4 つの結果があります
$index = array();
while($array = $db->GetArray("brand_list")){
$brand_list[] = $array;
$i++;
$ Index [] = $i;
//echo $i.',';
}
$wf->assign("i",$index);
$wf->gt; assign ('brand_list',$brand_list);


{foreach from=$brand_list item=list key=key}
{$i[$key]},
{/foreach
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート