トップページ⇒php
984コメント324KB

【PHP】Smarty【Template】

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん03/03/10 00:57ID:NhgrjNBT
このスレ、あってもいいんじゃないかと。

本家(英語)
http://smarty.php.net/

日本語マニュアルとか
http://sunset.freespace.jp/smarty/
0002nobodyさん03/03/10 01:01ID:???
前に無かったっけ?
コンテンツとデザインの分離はしばらく物議かもしそうだし
解決策の1つとしてsmartyいいかもね。

ついでに2げっと。
0003 ◆AngelH/kMI 03/03/10 12:35ID:???
3げとずさー(AA略

最近使い始めたよ>Smarty
使いこなしていると言えるまでにどれだけかかるやら。

0004 ◆AngelH/kMI 03/03/10 12:47ID:???
メモ代わりに。
自分が引っかかったところ。

青マンモス本の時点ではループ指定(テンプレート側)するときに
{$loopname/variable}
だったのが
{$variable[loopname]}
になってる。
$varibableが連想配列なら
{$variable[loopname].arrayname}
こんな感じ。

0005nobodyさん03/03/11 00:06ID:???
Smartyって、コンパイル(?)してキャッシュを作るみたいですが、
キャッシュを作らずにHTMLを吐き出す方法はないでしょうか?
0006nobodyさん03/03/11 17:04ID:???
ついに作られたかsmartyスレ。歓迎。
0007nobodyさん03/03/11 17:06ID:???
>>5
よくわからんが、コンパイルされたファイルとキャッシュされたファイルは別物だが。

キャッシュを作らずHTMLを作るとはどういうこと?
毎回コンパイルするようにしたいなら、設定変えればできるぞ。
0008nobodyさん03/03/11 17:07ID:???
日本語のマニュアル
http://sunset.freespace.jp/smarty/

↑ここもマジで感謝!!
0009nobodyさん03/03/11 17:09ID:???
有名なところだと、XOOPS2にsmartyが使われています。

XOOPS 日本の公式サイト
http://jp.xoops.org/
0010nobodyさん03/03/11 17:25ID:???
誰かSmarty[スマテイ]の基本的な使い方を解説してくれ。簡単にな。
0011nobodyさん03/03/11 17:32ID:???
>>10
まず、スマテイをスマーティーと発音する。
0012nobodyさん03/03/11 17:38ID:???
日本語サイトにメリットとして

>より明確にphpのプレゼンテーションからアプリケーションの ロジックとコンテンツを分離して管理する事を容易にします。
>これはプログラマーとテンプレートデザイナーの役割が異なる 状況か、
>たいていの場合は同じ人間ではないのが最良だという事です。

こう書いてあったんだけど、つまり役割が同じ場合はこれ用なし?
0013nobodyさん03/03/11 17:52ID:???
>>11
スマーティー  発音わかった。 
誰かSmarty[スマーティー]の基本的な使い方を解説してくれ。簡単にな。
0014nobodyさん03/03/11 17:59ID:???
>>13
まず、スマーティーをスマーティと発音する。
0015nobodyさん03/03/11 18:23ID:???
>>14
スマーティ♪ マギーシローっぽい。
0016あぼーんNGNG
あぼーん
0017 ◆AngelH/kMI 03/03/11 19:17ID:???
メモ代わりにドキュメント書いてるんだけど
仕事忙しくてなかなか進まず。

すまんのぅ。
0018nobodyさん03/03/11 22:07ID:???
>>13
ダウンロードしてQUICKINSTALLを読むべし!
0019nobodyさん03/03/12 01:12ID:BE9nbHm+
これでフォームに自動的に値入力(Perl&RubyでいうFillInForm)
の機能があったらかなりイイのだが
も前らPHPではフォームに値付けるのどうされてますか?

PHP版HTML::Template
http://sourceforge.net/projects/phphtmltemplate/
0020あぼーんNGNG
あぼーん
0021nobodyさん03/03/12 05:18ID:???
おまえらなんでsmarty使ってる?
0022 ◆AngelH/kMI 03/03/12 08:47ID:???
>21
自分の場合はデザインとコードの分離のため。
HTMLを書く人間が別にいる場合、分離していないと
かなり面倒なことになる。

そのあたりの議論は
http://pc2.2ch.net/test/read.cgi/php/990953955/
こっちでかなりやっていた気がする。
0023nobodyさん03/03/12 11:09ID:???
かっこよさそうだから。
00242103/03/12 11:35ID:???
>>22
そうそう、前そこのスレでsmartyスレ立てようって言ってたんだけど
あんまりユーザがいないようだから。
でもXOOPS2でsmarty採用したから使う人が増えるかもね。
0025nobodyさん03/03/12 16:12ID:???
smartyは、テンプレートプログラミングみたいで、
デザイナーは、はたして使えるのか?と思うけど、
つか、HTMLテンプレートのほうが分かり易いのかな?と思ったり、
両方使った事ある人どう思う?
0026あぼーんNGNG
あぼーん
0027nobodyさん03/03/12 17:11ID:???
php自体がテンプレートみたいなもんじゃん。アホらしい。
0028nobodyさん03/03/12 17:31ID:???
暇つぶしにCでCGIを書いてみたんだが、
perl,phpは楽だよな。>>27のいうことも分かる。
問題はデザイナーが単独でphpスクリプトを修正できるかというと
そこまで簡単じゃないってことだな。
プログラマ・デザイナの両方の負担の釣り合いが取れるところがsmartyなんじゃないの?
0029nobodyさん03/03/12 18:11ID:???
>>28
MVCってのがある。

V(View)はMからデータを呼び出すだけで単独では通常計算を行わない。
と言うことになっている。

表示すべき項目を$dataと言うハッシュに詰め込んで、

「データは<? print($data["name"]);?>で表示させられるよ。」

とか言っちゃえば良いと。

デザイナがJavaScript位は出来るだろうと(Web制作の某スレではこれはデザイナの仕事ではないらしい。(藁)仮定すると
PHPの豊富な制御構造くらい使いこなせるだろう。

こうしてみるとその辺の下手なテンプレート機構より遙かに強力でしかも汎用的だ。


JSPと同じ思想でPHPを使っちゃおうというのが俺の言いたいこと。
0030nobodyさん03/03/12 21:31ID:???
Templateの存在意義とか話すのはスレ違いだろ。
折角Smartyのスレたったんだし、Smartyの話しようや。
0031nobodyさん03/03/12 23:50ID:???
Smartyだけは厳しいと。
0032nobodyさん03/03/13 00:42ID:???
HTML::Templateならそのまま>>29の言うMだけ
をPerlやRubyにできるな。
HTML::Templateのがよくないか?

PHPでテンプレート使うの馬鹿らしいんだけど、テンプレート
前提でコーディングしとくと、渡す直前で値をダンプしてみれば
エラーの原因とか何やってるのかがすぐわかるのよ。
0033nobodyさん03/03/13 00:50ID:???
たしかにPHPでテンプレートってどうなんだろう?
0034nobodyさん03/03/13 11:02ID:???
誰かsmartyで携帯対応なサイト作ってる香具師いる?
0035nobodyさん03/03/13 11:10ID:???
>>32
いや、だからVにテンプレートを採用するかPHPの特性を素直に使うかの違いよ。
両者ともデータチェックはMの最後なりCの最後なりでチェックできる。
0036 ◆AngelH/kMI 03/03/13 13:30ID:???
>34
微妙に。

>35
まあ、そうだねぇ。
結局は好みの問題。
既存のテンプレートエンジンが気に入らなければ
自分で作ってもいいし、
自分にあうのがあればそれを使えばいいだけ。

自分はループのネスト考えるのがだるくて
既存のものを使ってますが(苦笑
WYSIWYGなエディタでも表示崩れないやつが好き。


あとHTML_Template_ITバージョンアップしてるな。
0037nobodyさん03/03/13 13:31ID:???
>>36
>WYSIWYGなエディタでも表示崩れないやつが好き。

ある?php始めてからもっぱらテキストエディタ派になっちゃいましたが。
0038 ◆AngelH/kMI 03/03/13 13:44ID:???
>37
川里氏/佐藤氏のPHP4テンプレートクラスライブラリ(改)は
割とそのあたり気を使って作られていたよ。
http://www.daiwakantei.co.jp/pc/tmpl2sa.html
Dreamweaverでは平気だった。

Smartyもうまく使えば大丈夫だと思う。
(というか、テンプレートファイルと画像を置く位置かな)

個人的には
http://sunset.freespace.jp/smarty/
ここにスクリーンショットでてるDreamweaverMXの
extensionに期待。
0039山崎渉03/03/13 16:56ID:???
(^^)
0040nobodyさん03/03/15 10:11ID:???
smartyの良さって、デザインとコードの分離もあるけどさ、
コンパイルされたファイルとキャッシュによる表示速度の速度の向上じゃない?
0041nobodyさん03/03/15 12:33ID:???
>>40
>コンパイルされたファイル
結局は1行ごとにインタプリトされると思うよ。
0042nobodyさん03/03/15 23:39ID:X1LKF8i0
話題ないね
0043nobodyさん03/03/16 01:17ID:???
質問だがsmartyを使ってて中にperlのCGIを埋め込むことできる?

つまりブロックで言うとトップとレフトはsmartyのテンプレなんだけど、
真中のコンテンツの部分をperlのCGI(掲示板)を利用したいわけです。

cgiを呼び出せば、内容は表示できそうですが、POSTとかGETした時
内容を渡せるのか?とか難しそうです。

そんなことしてる香具師いる?
0044nobodyさん03/03/16 01:27ID:???
そもそもsmartyはPHP標準?既にインストールされてるの?
0045nobodyさん03/03/16 19:59ID:???
>>44
されてない。
もともとPHP自体がHTMLに埋め込んで使うものだから、
標準インストールする意味はあまり無さそうだと思う。
0046nobodyさん03/03/18 15:26ID:???
smartyで携帯サイト作ってる奴いる?
0047nobodyさん03/03/21 05:00ID:???
>>43
perlのCGI側でHTML::Templateとか使ったほうがラクじゃないの?
0048nobodyさん03/03/21 12:19ID:???
Smarty使えない鯖なんですが
ほかに標準のテンプレート機能ってあるのしょうか?
0049nobodyさん03/03/21 14:56ID:???
>>48
10スレ前の過去ログも読めないのか…
0050nobodyさん03/03/21 19:50ID:02OewLFo
>>48
Smarty使えない鯖ってどんな鯖?
0051nobodyさん03/03/21 19:52ID:???
>>48
>ほかに標準のテンプレート機能ってあるのしょうか?

PHP
0052nobodyさん03/03/21 20:08ID:???
この中に数人テンプレートの意味がわかってない人がいますね。(w
0053nobodyさん03/03/21 20:30ID:???
>>50
PHPが使えないサーバーか、quotaが1MBぐらいのサーバー。
■ このスレッドは過去ログ倉庫に格納されています