ホームページ  >  記事  >  バックエンド開発  >  jsでphp(ecshop Smartyテンプレート)の配列要素の値を取得する場合の対処方法

jsでphp(ecshop Smartyテンプレート)の配列要素の値を取得する場合の対処方法

WBOY
WBOYオリジナル
2016-06-13 12:12:01997ブラウズ

js は php (ecshop Smarty テンプレート) の配列要素の値を取得します。
最近 PHP ツール (ecshop) を変更したところ、問題が発生しました。専門家の助けを心からお願いします。
1. Smarty テンプレートを使用して値を割り当てます。 php ページのコードの一部は次のとおりです:

while ($row = $db->FetchRow($res))
{
if($cur== null)
$cur=$row['template_id'] ;
$modelrow[$row['template_id']]=$row['template_id'];
$modelcontent[$row['template_id] ']]=trim($row['template_content']);
$modelplates[$row['template_id']]=$row['template_subject']." -$row[content_category]-".$row ['template_subject_second'];
// echo $modelcontent[ $row['template_id']];

}
$smarty->assign('cur', $cur);
$smarty->assign('modelrow', $modelrow );
$smarty->assign('modelplates', $modelplates);
$smarty->assign('modelcontent',$ modelcontent);
/*end*/

$modelcontent 配列がフロント デスクの dwt テンプレートに渡されます。
1. 変数値 temp= を表示して取得します。 $("#temp").val(); (この変数の値は 1、2、3 などですが、取得するのは問題ありません。)
2. var a='{$modelcontent.temp} '; 2 番目のステップは、変数を使用して $modelcontent の要素値を取得することですが、テスト中には配列添字 1 を取得することができました。 var a='{$modelcontent.1}'。
ここで問題は、既知の変数に基づいて配列の対応する添字値を取得する方法です。他にも解決策はまだあります、ありがとう!
------解決策----------------------

var a= ' に置き換えます';
alert(a);結果を見てください
-----解決策のアイデア-------- ----------------
var a='{$modelcontent.' temp '}';
alert(a);
次のように再試行してくださいこれ
------解決策のアイデア----------------------
http://www.zui88 .com /blog/view-261.html
役立つかどうかを確認してください

引用
Smarty テンプレートでは、配列のキー名は次のとおりです。変数値、キー名に対応する値を表示する方法
: バックエンド プログラム
タイトルは少し複雑です。おそらく、

php が配列を割り当てていることを意味します。テンプレートの配列の情報は次のとおりです:

$config= array(

1=>'Zhongshan',

2=>'Shiqi'

);

データベース記憶域フィールドには、テンプレートに表示される配列のキー名 (1 など) が記録されます: Zhongshan。

このように書くとエラーが報告されます:

{{$config.$ro​​w.region}}

テンプレートへの正しい書き方{{$config[$row .region]}}

今日発生した問題はもう少し複雑です。データベース フィールドには一部の構成のシリアル化が保存されるため、リージョン情報を取得する際の逆シリアル化処理は次のようになります。間に何かが必要です:

{{assign var=param value=$l.params
-----解決策のアイデア--- ---------- ---------
unserialize}}

$param.region は値 1
を取得できます


-----解決策のアイデア----------------------
はありません{lection} に KEY はありませんか? ? ?

または、一括転送中に KEY を保存するために追加の列を渡します
-----ソリューションのアイデア------ -- --
smarty ループは使えますか?私はループ配列について話しています。キーカラムはないのでしょうか?便利な配列を使用する場合は、
上に間違って記述されました
{セクション名=ループ ループ=$v}
{$v[ループ].配列キー値}
{/セクション}を使用してください。

キーを出力して、キーが別の番号であるかどうかを確認します。そのため、KEY を押しても正しい値を取得できません
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。