のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,646,459人
昨日:no data人
今日:
最近の注目
人気の最安値情報

元スレ【PHP】 Smarty 【テンプレートエンジン】 第2章

php覧 / PC版 /
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter

651 = :

古い解説があるからまともに扱えないわけで

652 = :

古いっつってもSmarty2を使いたい人には必要な情報だから・・・

Google検索で過去1年とか期間していすればいいんじゃないかね?
解説のせいにしてるのはただの情弱だよ。

653 = :

くだらねー話題で顔真っ赤になってんじゃねーぞ

654 = :

PHPのオブジェクト指向ってオブジェクト指向に徹しきれてないよね。
C#とかJavaと比べると

655 = :

徹すると初心者が近寄れなくなるからな
で、Smartyと何の関係が?

656 = :

いや、>>646がPHPのオブジェクト指向が分かってないねって
オブジェクト指向勉強するなら、Javaとかのほうがいいじゃんと思った
徹しても、徹してない今の状況でも初心者はオブジェクト指向でコード書かないっしょ
Smartyの話はしてない

657 = :

OOPを理解出来るかどうかは、言語とはあまり関係無いかな。
Java使っても理解出来てない人はOOP出来ないから。

658 = :

まぁそうなんだけどさ、
やるならって話だとC#とかの方が良くない?
理解できなきゃ、ってかオブジェクト指向の存在、ありがたさ知らなきゃ
できないし初心者PHPに必要ないだろうよ。

例えばJava,C#でOOPできてたらPHPでもそれなりに出来るじゃん。
PHPのOOPでコード書けても、Javaでは戸惑ったりするんじゃないか。

Smarty関係なくなっちゃったけど、
Smarty使うことによって.NETっぽくコーディング書けるじゃね
あんまりSmartyのことしらんけど。

659 = :

JavaとC#はIDEが優秀ってのもあるよね。
綺麗なコードを書けば書くほど開発効率上がるし、IDEがエラーを検出して教えてくれる

PHPは未だにテキストエディタで書いて、手動でサーバにアップロードして、動作テストとかしてる人多いからなぁ

661 = :

logicは共通でテンプレ内で使う変数も共通なんだけど
サイトごとにデザインが違うためにコーダーによって組み方が全然違っているせいで
テンプレ内の条件分岐なんかをサイトごとにファイル開いて手動修正してるんですが
何か良い方法ないですかね・・・
(デザインの固定はお客さんの要望に柔軟に答えられなくなるので難しいです

662 = :

具体的にどんな条件分岐?

663 = :

基本はログインしているかどうかなんですが
そこから商品の内容に応じたテーブルの生成やタグの出力、
表示内容の追加に伴う変数の追加といったところです

664 = :

難しいところだね。
その条件分岐がViewロジックとして適切なのであれば、
コーディング規約決めて統一するしかない。

サイトごとに、デザインが異なるのであればコードが変わるのは必然・・・・

665 = :

やっぱり難しいですよね・・
ちょっと呼び出す変数を変えるだけでも
数十あるクライアントをひとつひとつFTPで入って修正していくのが大変で・・

とはいえご回答ありがとうございました!

667 = :

>>665
何がしたいのかよくわからんが、
独自プラグインを作るなりで対応出来そうな臭いがする。

669 = :

default修飾子は以下の実装になってるから、修正するか新しい修飾子作っちゃえばいいんじゃないかな。

function smarty_modifier_default($string, $default = '')
{
if (!isset($string) || $string === '')
return $default;
else
return $string;
}

674 = :

>>671
sectionのリファレンス、「例 7-31. {section} で配列を割り当てない例」にかいてある。
http://www.smarty.net/manual/ja/language.function.section.php

15回ループする例
{section name=foo start=1 loop=15}
{$smarty.section.foo.index}
{/section}

678 = :

かなり前にね。
でもうちはまだ2.6
新規開発でもしない限り乗り換えるほどのメリットは感じないしな

679 = :

無理に乗り換える必要性は無いが、
math構文とかforeach構文とか地味に使いやすそうでウズウズするのが制作者ってもんよ。

新規案件あったら乗り換えたいが、安定性だけが怖い。

682 = :

PHPフレームワークの学習をしようとしています。
今までのスキルを活かすため、ビューにはSmartyを使いたいのですが、
Smartyを1番無理なく使えるフレームワークは何でしょうか?

今の所、CakePHPかZendFrameworkを考えています。

683 = :

本質的にはMVCは独立しているべきでありまともなFWであれば何を使っても無理なく導入できるはずでありうんたらかんたら

684 = :

コントローラやモデルはルールが多いCakeを主体にして統一感を持たせて
足りない機能はZendをユーティリティとして使い
ビューは好きなの(今回ならSmarty)選ぶ

685 = :

smartyの利点を余すことなく使えるかどうか

686 = :

>>682
Zendに一票。
覚える方言が少ないので、比較的学びやすいと思う。

その後で他のフレームワークを触ってみればいい。

687 = :

Smarty3.0.5で、テンプレ内に、
{$foo = array("k"=>"v")}
と書くと、エラーになってしまいます。
これ(エラーになること)は仕様でしょうか?

{$foo["k"] = "v"}
ならOKなので、上述の書き方が許されても良い気がするのですが・・・

688 = :

>>683, 684, 685, 686

まずは686さんのアドバイスに従い、Zendでやっていこうと思います。
皆様、アドバイスありがとうございました。

691 = :

$a['id'] = xx;
$a['name'] = yy;
である変数$aをテンプレートに渡すと、
  {foreach $a as $key => $value}
と書けばキーと値を順次取り出せますが、
 $a->id = xx;
 $a->name = yy;
である変数$aをテンプレートに渡す場合、プロパティ(id, name)と値 を
順次取り出す方法はあるのでしょうか?

692 = :

{foreach $a as $key => $value}

693 = :

>>692
出来ました!
ありがとうございますっ!

696 = :

このスレッドにはSmarty布教者がいるようですね。
俺みたいな駆け出し若輩ド素人には、大変心強いデス。
ありがとうございます。

697 = :

マニュアルくらい読めよ

698 = :

馬鹿発見。
あ、697のことね。

699 = :

そりゃお前だろw

700 = :

smartyのスレなんだからスマートにいこうぜ


←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / php一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

類似してるかもしれないスレッド


トップメニューへ / →のくす牧場書庫について