1 名前:nobodyさん [2008/02/02(土) 00:21:09 ID:6cKcKeTp] まぬあるwww.smarty.net/manual/ja/
103 名前:nobodyさん [2008/05/15(木) 19:11:15 ID:ss9CEhce] JSmartyでもry
104 名前:nobodyさん mailto:sage [2008/05/19(月) 00:22:26 ID:???] Smartyの残骸に悩むPHP土方の皆さんごきげんようw
105 名前:nobodyさん mailto:sage [2008/05/21(水) 08:04:10 ID:???] 普通に、外部モジュール化したHTMLテンプレートを読み込んで、 正規表現で独自タグを変数に置換して出力。 っていう古式ゆかしきCGI技じゃいかんの? Smartyの3〜4倍は速いぞ。
106 名前:nobodyさん mailto:sage [2008/05/21(水) 08:06:14 ID:???] まだこういう馬鹿いるのかw
107 名前:nobodyさん mailto:sage [2008/05/21(水) 08:12:24 ID:???] なんでバカなんだ? ちゃんとロジックとデザイン分離できてるじゃん。 そもそもPerlとか他の言語のテンプレートエンジン全般に言えるけど、 こういうシンプルな目的だったのに、 万人の要望に応えるうちに無駄に富豪化して、 ムーアの法則頼りで突っ走ってるのが、今のテンプレートエンジンだろ。
108 名前:nobodyさん mailto:sage [2008/05/21(水) 09:50:33 ID:???] テンプレートエンジンを使いこなせてない人の発言だなぁ・・・。 デザインとロジックの分離レベルにもよるけど、 ビューで処理すべきロジックもあるって事だ。 if foreach include |escape あたりは最低限必須だろ。
109 名前:nobodyさん mailto:sage [2008/05/21(水) 10:14:55 ID:???] >107がそう思ってるならその自分のやり方を貫けばいい >108がそう思ってるならその自分のやり方を貫けばいい 自分の考えを押し付けるのが一番うざい。
110 名前:nobodyさん mailto:sage [2008/05/21(水) 12:49:26 ID:???] そう、自分がやりやすい方式で作ればよろしい もっとも>>108 の挙げてる機能くらいは無いと確かに困るというか ロジック側でHTMLを吐く必要性が出てくるので嫌
111 名前:nobodyさん mailto:sage [2008/05/21(水) 12:49:45 ID:???] そういう問題ではない。 実装の統一化は今後の開発効率を左右する重要な課題。 ただ、Smartyに何かが足りないのは確か。 結局どこかで独自に使い方を工夫しないといけない場合が出る。 特にescape。
112 名前:nobodyさん mailto:sage [2008/05/21(水) 13:06:06 ID:???] おまいは全世界を統一したい野望でもあるのか? 統一すれば効率はいいだろうが、そんなツマラン世界は御免こうむる
113 名前:nobodyさん mailto:sage [2008/05/21(水) 13:44:07 ID:???] >>109 おまいは、現場でコーディング規約とかに文句言うタイプだろ。
114 名前:nobodyさん mailto:sage [2008/05/22(木) 01:18:43 ID:???] 文句言うべきときは言うべきだと思う //使うなって言われる噴飯モノの現場もあるしな しかも理由が「/**/と入れ子にできちゃうから」という意味不明具合
115 名前:nobodyさん mailto:sage [2008/05/22(木) 01:48:09 ID:???] >>112 趣味と仕事を兼ねるからツマランのじゃね? 仕事と割り切って出世する事を考えていこうよ。
116 名前:nobodyさん mailto:sage [2008/05/22(木) 02:33:05 ID:???] 出世考えるならプログラマー辞めて「プログラムも判る企画/営業」に異動促す努力したほうがええで いくらコード練っても、中/印/ベトナム経由の「安いだけの人材」がケツ噛み続ける時代 会社としてのポストがなくなる 「MFC超得意だからMSなくなるまでは困らん」と言ってた先輩が潰れて実家の本屋継いだぜ 「PHP? 新し物好きは迷惑だね。perlで一生食っていけるよ」と豪語してた 馬鹿女は、アルコールで精神病院を経て休職後、そのまま元彼と寿退社してリタイアだ。 一番頼れる仲間は某MTAのドキュメントにも名前を連ねる我が社の誇りだった人 今はビル屋上緑化を主とする企業のヒラ営業に転職しちまったぜ。 毎日PHPに限らずコード書かされてて思うが、 なんかそういうドロップアウトした筈の彼らがみんな幸せそうに見えるんだ なんでなんだろう なんの話だっけ
117 名前:nobodyさん mailto:sage [2008/05/22(木) 12:54:15 ID:???] オレは給料泥棒 まで読んだ
118 名前:nobodyさん [2008/06/01(日) 12:02:10 ID:hyBgIur5] Smartyはプロの世界でもよく使われるんですか?
119 名前:nobodyさん mailto:sage [2008/06/01(日) 17:37:18 ID:???] SmartyのないPHPなんてレモンのないコーヒーですよ。
120 名前:nobodyさん mailto:sage [2008/06/01(日) 18:54:42 ID:???] なぬ?
121 名前:nobodyさん mailto:sage [2008/06/02(月) 03:03:23 ID:???] Smartyを始めたら背が5cm伸びて、彼女が出来ました。
122 名前:nobodyさん mailto:sage [2008/06/02(月) 03:08:23 ID:???] OpenPNEが一日も早くSmarty外ししてくれることを願うよ。つうか俺がコミットすりゃいいのかな。
123 名前:nobodyさん mailto:sage [2008/06/02(月) 04:38:00 ID:???] >>122 そんなことしたら背が縮んで、彼女が離れていくじゃないか。
124 名前:nobodyさん mailto:sage [2008/06/02(月) 05:30:17 ID:???] 嫁と分かれたいケースに最適ですかね
125 名前:nobodyさん mailto:sage [2008/06/02(月) 05:53:12 ID:???] >>124 リンクしてコンパイル済みなら分離できません
126 名前:nobodyさん mailto:sage [2008/06/02(月) 06:36:26 ID:???] ライブラリと生活モデル、および資産の依存性を分離して 再コンパイルするしかない訳ですね。 わかります。
127 名前:nobodyさん mailto:sage [2008/06/02(月) 18:15:50 ID:???] 再婚パイルをお考えですか。
128 名前:nobodyさん mailto:sage [2008/06/03(火) 04:20:49 ID:???] GirlFriend Pluginがファイル破損しちゃいました。 どこで再配布してますか?
129 名前:nobodyさん mailto:sage [2008/06/03(火) 08:16:30 ID:???] 新しいPluginは古いものと互換性がないので、 関連ファイルは全部削除しないとダメだよ
130 名前:nobodyさん mailto:sage [2008/06/03(火) 14:28:35 ID:???] まさかこのスレでふっきれるとはおもわなんだ。 貴様らありがとう。
131 名前:nobodyさん mailto:sage [2008/06/04(水) 22:39:07 ID:???] ウチ、すごいぞw 俺が来るまで何年もプログラミング初心者が入ってきては辞めての繰り返しだったみたいで、 機能つけたしが全てSmarty設置で実現されてるwww サイトのいたるところにvarだのbinだのがあるwwww 勘弁してくれwwww
132 名前:nobodyさん mailto:sage [2008/06/04(水) 22:53:01 ID:???] 日本語でおk
133 名前:nobodyさん mailto:sage [2008/06/05(木) 12:25:23 ID:???] 業務でSmartyを使っているのか...
134 名前:nobodyさん mailto:sage [2008/06/05(木) 13:57:52 ID:???] >>134 そりゃ背が伸びて彼女ができるなら使うだろう。
135 名前:nobodyさん mailto:sage [2008/06/05(木) 14:50:40 ID:???] 業務だからこそ使うんじゃないの? 逆に趣味とかじゃ使いたくない。
136 名前:nobodyさん mailto:sage [2008/06/05(木) 21:38:50 ID:???] 趣味でPHPはないわ。 俺は半年ほど休んでた時期に趣味で遊んだのはSchemeだけだった。 実務(共同作業)がSchemeでも進められるなら、迷わずこれを選ぶ。 しかし近年の現実はどいつもこいつもPerlすら宇宙語だからな。PHP一択にならざるをえない。
137 名前:nobodyさん mailto:sage [2008/06/06(金) 13:01:48 ID:???] PHP + Smarty を使って、お客専用のCMSモドキより、 MovableType4.1 + αカスタマイズのCMSモドキの方が、お客には受けが良かった上に見積もりも良かった! 業務でSmartyを使うなら、隠れて使いたい
138 名前:nobodyさん mailto:sage [2008/06/06(金) 21:00:18 ID:???] そりゃデザインのおかげじゃねーの
139 名前:nobodyさん mailto:sage [2008/06/06(金) 22:14:37 ID:???] 見た目以外に判断材料があるやつなんて、最低でもPHPを書けるレベル以上のやつに限られる。
140 名前:nobodyさん mailto:sage [2008/06/06(金) 23:39:38 ID:???] >>139 いや、判断材料としては操作感も重要だけど、使う側と作る側のロジックが違うから どう考えても不条理な操作が要求されたりするんだよなあ。 もちろん使う人のために作るんだからお客様優先なわけだが、 将来コケるのが目に見えてるから困る。
141 名前:nobodyさん [2008/06/06(金) 23:48:35 ID:astBuURj] 現在のバージョンは、 ・セールスレターテンプレート集(68通) ・売れるセールスレターの書き方 ・ダイレクトメールワークシート ・穴埋め式Eメールテンプレート(14通) ・究極のセールスレターツールBOX など、合計で500ページ近いパッケージとCDROMが セットになっています。 ただ、この無料お試しはだいぶコストがかかるらしいので 500個の限定だそうです。 興味があればこちらをクリックしてください。 www.123marketing.jp/yanik/indextrial.php?jvcd=16797
142 名前:nobodyさん mailto:sage [2008/06/06(金) 23:49:48 ID:???] >>140 それはあなたが低スキルだからでしょうね。コケて逃亡するのはあなたではないでしょうか。
143 名前:nobodyさん [2008/07/10(木) 05:42:24 ID:NxX5vAdg] Smartyで、テンプレート内で送られてきた変数の簡単な計算できませんか? {$value + 3}など。 試してみたのですが、{$value}の値がそのまま出力されます
144 名前:nobodyさん mailto:sage [2008/07/10(木) 09:09:32 ID:???] つマニュアル
145 名前:nobodyさん mailto:sage [2008/07/10(木) 21:23:41 ID:???] 折角公式に日本語のマニュアルがあるというのに全く。
146 名前:nobodyさん [2008/07/21(月) 01:40:20 ID:8uak49aQ] ■ MySmarty.class.php <?php require_once("Smarty/Smarty.class.php"); classMySmartyextendsSmarty { publicfunction__construct() { $this->Smarty(); $this->template_dir="./data/templates"; $this->compile_dir="./data/templates_c"; } } ?> ■ test.php(MySmarty.class.php と同じディレクトリ) → 正常に動作 <?php require_once( './MySmarty.class.php' ); $o_smarty = new MySmarty(); $o_smarty->display( "main.tpl" ); ?> ■ dir.php(MySmarty.class.php の直下のフォルダ) → エラー Warning: Smarty error: unable to read resource: "main.tpl" in C:\hoge\Smarty\Smarty.class.php on line 1092 <?php require_once( '../MySmarty.class.php' ); $o_smarty = new MySmarty(); $o_smarty->display( "main.tpl" ); ?> これは仕様なの?
147 名前:146 [2008/07/21(月) 01:41:40 ID:8uak49aQ] MySmarty.class.phpで半角空白がなくなっていますが、 2chにコピペするときの変換ミスで、実際は正常に動いています。
148 名前:nobodyさん mailto:sage [2008/07/21(月) 01:47:07 ID:???] 仕様
149 名前:146 mailto:sage [2008/07/21(月) 01:52:13 ID:???] >>148 ええ!? マジすか……。 それじゃ、ディレクトリが多数ある場合は、 全てのディレクトリにMySmarty.class.phpが必要ってこと? プラグイン自作してどうにかなる話じゃないですよ?w
150 名前:nobodyさん mailto:sage [2008/07/21(月) 02:24:44 ID:???] お前は何を言ってるんだ
151 名前:nobodyさん mailto:sage [2008/07/21(月) 03:18:45 ID:???] >>150 いや、文字通り、Smarty.class.phpを継承した設定済みのMySmarty.class.phpを 直下以外のディレクトリに置くとtemplatesディレクトリの認識がしなくなるのが仕様だったら、 多数のディレクトリ分けしてると超大変だよね、って言ってるんだけど。 >>146 が仕様で間違いないのなら、俺は何か間違ったこと言っているか?
152 名前:nobodyさん mailto:sage [2008/07/21(月) 09:54:38 ID:???] さて問題です。 dir.phpからみて $this->template_dir="./data/templates"; $this->compile_dir="./data/templates_c"; このディレクトリはどこでしょう?
153 名前:nobodyさん mailto:sage [2008/07/21(月) 12:55:50 ID:???] >>152 dir.phpは、MySmarty.class.phpを呼び出しているだけで、 dataディレクトリは、MySmarty.class.phpから見た相対パスだから、 dir.phpから見たdataディレクトリの場所は、関係ないと思うけど。 そもそも、なぜか絶対パスを受け付けてくれんのよね。エラーになる。
154 名前:nobodyさん mailto:sage [2008/07/22(火) 08:41:57 ID:???] >そもそも、なぜか絶対パスを受け付けてくれんのよね。 こっちのほうが深刻というか根幹な問題をかかえてる気がするのだが・・・
155 名前:nobodyさん mailto:sage [2008/07/24(木) 14:01:26 ID:???] PHPは実行されてるファイルの位置がカレントディレクトリになるから……
156 名前:nobodyさん mailto:sage [2008/07/24(木) 21:30:17 ID:???] $template_dir これは、デフォルトのテンプレートディレクトリの名前です。 ファイルのインクルード時にリソースの種類を指定しなかった場合は、 このディレクトリから探します。デフォルトは ./templates で、 これは、実行しているスクリプトと 同じ場所にある templates/ ディレクトリを探すということです。 という文章からすると「実行しているスクリプト」が基準になるということみたいだな。
157 名前:nobodyさん mailto:sage [2008/08/01(金) 21:13:05 ID:???] Smarty廃れましたなぁ。 そんなことより、PHPもJSPのように カスタムタグが使えたらいいのにね。
158 名前:nobodyさん mailto:sage [2008/08/02(土) 02:29:09 ID:???] 廃れてないけど
159 名前:nobodyさん mailto:sage [2008/08/02(土) 19:51:20 ID:???] スレ立て半年でこの程度の伸びだったら、十分廃れてるだろw ぶっちゃけ、必要な機能だけ絞り込んで自分で作った方がいい。
160 名前:nobodyさん mailto:sage [2008/08/02(土) 19:56:13 ID:???] いいというのはどういう点で?
161 名前:nobodyさん [2008/08/03(日) 10:51:13 ID:4+uLL3BX] でも、テンプレートって言えば、もうSmartyでしょ。
162 名前:nobodyさん mailto:sage [2008/08/03(日) 11:32:25 ID:???] テンプレート機能だけ使いたいならSmartyを使うか、生phpで済ませる 各種FW使うなら同梱されてるテンプレートエンジンを使う
163 名前:nobodyさん mailto:sage [2008/08/04(月) 11:49:55 ID:???] 「index.php#xxx」 smartyで↑の「xxx」を取得する方法ってありますか?
164 名前:nobodyさん mailto:sage [2008/08/04(月) 22:09:03 ID:???] >>163 例で示されたxxxの部分は通常サーバ側には送信されることはない。 なのでサーバサイドで動いているsmartyから取得することは不可能。
165 名前:nobodyさん mailto:sage [2008/08/05(火) 16:01:03 ID:???] >>164 ぎょぎょ! 確かにその通りでした。
166 名前:nobodyさん mailto:sage [2008/08/06(水) 21:40:18 ID:???] 仮に送信されるにしても、smartyじゃなくPHPから取ると思うんだけどなあ。
167 名前:nobodyさん mailto:sage [2008/08/07(木) 20:08:18 ID:???] テンプレ内で{}使う方法ド忘れした誰かHELP
168 名前:nobodyさん mailto:sage [2008/08/07(木) 20:16:02 ID:???] www.smarty.net/manual/ja/language.function.ldelim.php
169 名前:nobodyさん mailto:sage [2008/09/04(木) 10:40:28 ID:???] {include} で出力された結果が複数行にわたる場合、全ての行に対してインデントさせるにはどうすればいいですか? {"\t"}{include} とかしても先頭の行だけしかインデントされなくて
170 名前:nobodyさん mailto:sage [2008/09/04(木) 11:33:28 ID:???] 全部divで囲んでCSSで
171 名前:169 mailto:sage [2008/09/04(木) 12:15:47 ID:???] ああ、すみません、出力されたソースでの話です・・・
172 名前:nobodyさん mailto:sage [2008/09/04(木) 12:25:57 ID:???] 変数に格納してindentかけるとか?
173 名前:169 mailto:sage [2008/09/04(木) 21:08:05 ID:???] すみません、変数の宣言はphpファイル側でするものですか?もしそうなら、 配布されているウェブアプリがsmartyを使っているのですが 配布ファイルのバージョンアップの際に面倒なことにならないかな・・・と というかphpはわからなくて smartyも触るのは初めてでマニュアルを見ながら触っているのですが・・・ インデントするのも難しいですね レスしてくれた方々、ありがとうございますm(_ _)m
174 名前:nobodyさん mailto:sage [2008/09/04(木) 21:11:12 ID:???] Smartyの前にやるべきことが・・・
175 名前:nobodyさん mailto:sage [2008/09/04(木) 21:31:16 ID:???] デザイナにはロジックを触らせないコンセプトのSmarty
176 名前:169 mailto:sage [2008/09/05(金) 00:54:49 ID:???] すみません、includeのassignでできました レスしてくれた方々、ありがとうございますm(_ _)m
177 名前:nobodyさん [2008/09/24(水) 00:32:25 ID:KMdxurbq] JSPのカスタムタグがPHPにもあればいいのにな。 タグとクラスが一対一になってるのが素晴らしい。
178 名前:nobodyさん [2008/09/25(木) 00:09:46 ID:lXgzxRnB] すみません、教えてください。 <p>名前:{$name}</p> テンプレートに上記のような記述をしたのですが、 「名前:」の部分が化けてしまいます。 テンプレートファイルはEUCで保存してあります。 原因としてはどのような事が考えられますか?
179 名前:nobodyさん mailto:sage [2008/09/25(木) 01:02:44 ID:???] >>178 テンプレートをコンパイルしたあとのPHPファイルを見てみれば?
180 名前:178 mailto:sage [2008/09/25(木) 02:06:16 ID:???] >>179 見ましたが、既に化けてます・・・ SmartyがEUC以外の文字コードで テンプレートを処理しているということでしょうか?
181 名前:nobodyさん mailto:sage [2008/09/25(木) 02:17:37 ID:???] phpの文字コードがあってないんじゃない?
182 名前:178 mailto:sage [2008/09/25(木) 02:47:42 ID:???] >>181 あ、Smarty.class.phpがカスタマイズされていました。 SJIS→EUC→SJISみたいな変換してる。 お騒がせしました。すみません。 既存のものとは別にSmartyを入れます。
183 名前:nobodyさん [2008/09/26(金) 16:36:37 ID:NKaAViJV] template_cの中身を全部削除しても、template_cの中身を見に行こうとして、 そんなファイルないよっていうエラーが出るんですが、なぜでしょうか? ためしに、force_compileをtrueにしてみましたが、やっぱり見に行ってしまうようです。
184 名前:183 [2008/09/26(金) 17:02:20 ID:NKaAViJV] ちなみに、全く同じものを1つ下の階層にコピーすると動きました。 これはいったい・・・。
185 名前:nobodyさん mailto:sage [2008/09/26(金) 17:16:56 ID:???] パスがおかしい
186 名前:nobodyさん [2008/09/26(金) 17:23:10 ID:NKaAViJV] >>185 すいません、重要な点を忘れていました。 その別ディレクトリでコンパイルされたテンプレートを、 動かない方のtemplate_cにコピーしてやると、動くのです。 なのでパスが違ってはいないです。 全く謎・・・
187 名前:nobodyさん mailto:sage [2008/09/26(金) 17:49:10 ID:???] そんな断片的な情報では何も判断できないけど謎だね
188 名前:nobodyさん mailto:sage [2008/09/26(金) 23:07:17 ID:???] smartyってsjisだとエラー起きませんでしたっけ? さっきひさぶりにやってみたらsjisでも問題なく動いた(?_?)
189 名前:nobodyさん mailto:sage [2008/09/27(土) 01:11:46 ID:???] >>188 自己解決しました
190 名前:nobodyさん mailto:sage [2008/09/30(火) 23:16:57 ID:???] >>189 自己解決の詳細を報告しる!
191 名前:nobodyさん mailto:sage [2008/10/01(水) 16:25:04 ID:???] >>190 気合で解決!
192 名前:nobodyさん mailto:sage [2008/10/02(木) 16:19:26 ID:???] preFilterでテンプレートの文字コードを内部文字コードに合わせる。 postFilterで元に戻す。 これは基本だろう。
193 名前:nobodyさん mailto:sage [2008/10/03(金) 12:27:37 ID:???] みんななんでSmartyなんて使ってるんだ。意味がわからん。
194 名前:nobodyさん mailto:sage [2008/10/03(金) 19:01:42 ID:???] 名前:<?php echo $name ?> よりも 名前:{$name} のほうが書きやすくて可読性も高いから。
195 名前:nobodyさん mailto:sage [2008/10/03(金) 19:14:40 ID:???] それだけじゃなかんべw それだけしか使ってないならもったいないw
196 名前:nobodyさん mailto:sage [2008/10/03(金) 19:36:59 ID:???] <?=$name?>
197 名前:nobodyさん mailto:sage [2008/10/03(金) 20:29:13 ID:???] short_tagwwww
198 名前:nobodyさん mailto:sage [2008/10/04(土) 01:57:42 ID:???] Smarty(というかテンプレートエンジン)の便利さを解らない奴は、 素人or中級者未満だと自覚した方が良いよ。
199 名前:nobodyさん mailto:sage [2008/10/04(土) 13:26:02 ID:???] >>198 PHPそれ自体がテンプレートじゃん わざわざSmartyを使う意味がわからん
200 名前:nobodyさん mailto:sage [2008/10/05(日) 01:31:28 ID:???] >>199 意味がわからんというのは、君のやってる事のレベルが低いからだと思うよ。 PHP単体でキャッシュ処理や、ループ処理、エスケープ処理、携帯、PC両対応を想定したテンプレートを書いてごらん。 PHPはテンプレートっぽく使えるだけで、実務的にテンプレート管理を行おうとしたらかなりの量のコーディングが必要になってくる。 結局はテンプレートエンジンを作る必要はあるんだよ。
201 名前:nobodyさん mailto:sage [2008/10/05(日) 01:40:36 ID:???] ・PHP <?php echo strlen($var) ? preg_replace("/[\r\n]/", "<br />", htmlspecialchars($var)) : "hoge";?> ・Smarty {$var|escape|nl2br|default:"hoge"}
202 名前:nobodyさん mailto:sage [2008/10/05(日) 06:55:52 ID:???] なぜphpのほうでnl2br使わんの
203 名前:nobodyさん mailto:sage [2008/10/05(日) 11:15:11 ID:???] modelとviewを分けたいからじゃないの