バージョン選択

フォーラム

メニュー

オンライン状況

46 人のユーザが現在オンラインです。 (36 人のユーザが フォーラム を参照しています。)
登録ユーザ: 0
ゲスト: 46
もっと...

サイト内検索

その他 > その他 > Smartyについて

その他

新規スレッドを追加する

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
lvsa
投稿日時: 2009/10/28 18:24
対応状況: −−−
一人前
登録日: 2009/10/6
居住地:
投稿: 104
Smartyについて
いつもお世話になっております。

Smartyにて、ロジック側(PHP)にて生成した変数(配列)を
使用するさいは、PHP側でassignさせますよね?

/data/class/pages/cart/LC_Page_Cart.phpの
processファンクションの最後に以下の記述がありますが、
この記述にてLC_Page_Cartクラス内の変数をassignしている。
という認識であってますか?

該当記述箇所↓
$objView->assignobj($this);

もし、あっているとすれば、二次元配列の内容をSmarty側で
表示させる場合はどのような記述をせればよろしいのでしょうか?

現在は以下のような記述をしまして、エラーとなっています。
<!--{$resultArray.[0].price02}-->

エラー内容:syntax error: unrecognized tag・・・

おわかりになる方、ご教授のほどよろしくお願いいたします。
pineray
投稿日時: 2009/10/28 18:32
対応状況: −−−
長老
登録日: 2006/9/9
居住地: 伊賀
投稿: 292
Re: Smartyについて
assign の部分は合っていると思います。

引用:
現在は以下のような記述をしまして、エラーとなっています。
<!--{$resultArray.[0].price02}-->

上記の配列がどのような内容か分からないので推測ですが、下記のような記述ではどうでしょう?
<!--{$resultArray[0].price02}-->


----------------
EC-CUBEのプラグインを公開しています!
いつも reCAPTCHA

lvsa
投稿日時: 2009/10/28 18:45
対応状況: −−−
一人前
登録日: 2009/10/6
居住地:
投稿: 104
Re: Smartyについて
pinerayさま

いつもご教示していただき、ありがとうございます。

pinerayさんの方法で値を表示することができました。

>上記の配列がどのような内容か分からないので推測ですが、下記のような記述ではどうでしょう?
配列は、2次元の連想配列です。(以下参照)


array(5) { 
	[0]=>  array(5) { 
		["product_id"]=>  string(1) "1" 
		["count"]=>  string(2) "45" 
		["price02"]=>  string(3) "120" 
		["name"]=>  string(21) "アイスクリーム" 
		["image"]=>  string(26) "08311201_44f65122ee5fe.jpg" 
	} 
	
	[1]=>  array(5) { 
		["product_id"]=>  string(3) "410" 
		["count"]=>  string(1) "9" 
		["price02"]=>  string(4) "1650" 
		["name"]=>  string(9) "おなべ" 
		["image"]=>  string(26) "08311311_44f661811fec0.jpg" 
	} 
}


でも、なぜ

<!--{$resultArray[0].price02}-->


の記述だとちゃんと表示されるか、いまいち理解できてません。
(2次元配列の場合、array[0]["key"]で参照できると思うのですが、Smartyの場合違うみたいですね・・)
もっと勉強しなくてはダメですね・・・(泣)


ホントにありがとうございました。

ecbg
投稿日時: 2009/10/28 19:01
対応状況: −−−
仙人
登録日: 2009/2/25
居住地: 東京
投稿: 387
Re: Smartyについて
>Smartyにて、ロジック側(PHP)にて生成した変数(配列)を
>使用するさいは、PHP側でassignさせますよね?

ご存知だったらすいません。
こんな感じでPHP側で$testの変数を作成したら、
$thisに突っ込んであげればassignしなくても
Smarty側では<!--{$test}-->で拾えますよ。

$this->test = $test;
lvsa
投稿日時: 2009/10/29 12:41
対応状況: −−−
一人前
登録日: 2009/10/6
居住地:
投稿: 104
Re: Smartyについて
ecbgさま

ありがとうございます。
assignしなくても、
>$this->test = $test;
の記述でOKなんですね!!

知りませんでした><;
勉強になりました。ありがとうございます。
seasoft
投稿日時: 2009/10/29 13:28
対応状況: −−−
登録日: 2008/6/4
居住地:
投稿: 7365
Re: Smartyについて
たしか、process メソッドで、

$objView->assignobj($this);
とやっているので、それで良いのだったと思います。


----------------
Seasoft
こちらでの投稿は、アイディア程度に留めさせていただいております。
個別案件の作業は有償で承っております。お気軽にご相談ください。

lvsa
投稿日時: 2009/10/29 13:58
対応状況: −−−
一人前
登録日: 2009/10/6
居住地:
投稿: 104
Re: Smartyについて
seasoftさま

返信ありがとうございます。


$objView->assignobj($this);


上記記述があるので、私自身はあまり意識することなく
使用できるようですね。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ


 



ログイン


EC-CUBE公式 Amazon Payプラグイン

統計情報

総メンバー数は88,287名です
総投稿数は109,688件です

投稿数ランキング

1
seasoft
7365
2
468
3217
3
AMUAMU
2712
4
nanasess
2303
5
umebius
2085
6
yuh
1818
7
h_tanaka
1610
8
red
1567
9
mcontact
1240
10
tsuji
958
11
fukap
907
12
shutta
835
13
tao_s
796
14 ramrun 789
15 karin 689
16 sumida 641
17
homan
633
18 DELIGHT 572
19
patapata
502
20
flealog
485


ネットショップの壺

EC-CUBEインテグレートパートナー

Copyright© EC-CUBE CO.,LTD. All Rights Reserved.