[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 05/09 09:10 / Filesize : 226 KB / Number-of Response : 964
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【総合】PHPフレームワークを語るスレ8



1 名前:nobodyさん [2007/10/17(水) 16:01:41 ID:72/gWtt1]
前スレ
pc11.2ch.net/test/read.cgi/php/1181350116/

244 名前:nobodyさん mailto:sage [2007/10/30(火) 13:05:40 ID:???]
>>242-243
こいつら、昔のLinuxユーザと同じ間違いを犯してる

245 名前:nobodyさん mailto:sage [2007/10/30(火) 13:15:28 ID:???]
>>242
つっこむのもなんだけど、 #{} の中に } が入るとエラーになるよ。

convert_template のコメントを見て思いだしたのだが、
file_put_contents には LOCK_EX の指定ができるのに、
file_get_contents には LOCK_SH の指定ができないのは何故なんだ。

246 名前:nobodyさん mailto:sage [2007/10/30(火) 13:32:58 ID:???]
>>242-243
カワイソウ..

247 名前:nobodyさん mailto:sage [2007/10/30(火) 13:43:15 ID:???]
何故クラス化しなかったのかが気になる。

248 名前:nobodyさん mailto:sage [2007/10/30(火) 13:48:09 ID:???]
Smartyを擁護する気は毛頭無いが、自作関数自作関数言ってる人は、
よっぽどでかい案件か、もしくは自分で遊ぶアプリしか作ってないのかな?って思う。
何件もやってると、如何に「自分流」を入れないか、という事を気にするな、俺は。
メンテするの俺じゃないし。
・・・、本音を言えば・・・、自分流を入れると、後々それが間違ってたとして
バカにされるのが怖いっていうのもあるw 純正で対応してくれるならそれが一番!
でかい案件だと、色々と手を加えないとダメなんだろうな、とは思う。
俺は<% %>を廃止しなければ幸せになれるんじゃないだろうか・・・と思ってる。

249 名前:nobodyさん mailto:sage [2007/10/30(火) 13:49:22 ID:???]
置き換えだけだったら意味薄くね?
かといって制御構造取り入れるとブクブク太って醜くなる
生php最強

250 名前:nobodyさん mailto:sage [2007/10/30(火) 13:57:59 ID:???]
ちゃんと学校に行ってるのかが気になる。

251 名前:nobodyさん mailto:sage [2007/10/30(火) 13:59:16 ID:???]
60行でバグ出すなら実績とるわな…

252 名前:nobodyさん mailto:sage [2007/10/30(火) 14:01:31 ID:???]
>>251
激しく同意
「自作で」とか言っている奴はこのあたりが分かっていない



253 名前:248 mailto:sage [2007/10/30(火) 14:11:52 ID:???]
>>252
>>251は俺に対する皮肉(?)でしょ?
別に<?php echo 〜 ?>に限った事じゃなく、自作O/Rマッパーとか。
また、 function o(){・・・} やら function d(){・・・} やら、自分で使う分には
全く問題ないと思うよ。俺も自分で使う分にはよく使うよ。すっげー便利。
ただ、自分以外もメンテするものに使うのはどうかな?と思ってる。
そもそもそんな関数名、命名規則違反じゃないの?そのプロジェクトで。
で、そんなものをいっぱい量産するのはどうなの?って事。
と、思ったけど、場面々々で有効、無効あるから、この言い争いは無意味だったね。
すまん。


254 名前:nobodyさん mailto:sage [2007/10/30(火) 14:15:45 ID:???]
なんにでも完璧はないし、ケースバイケースだと思うがな
何はどうあれ、ちゃんとコードを書いて晒した >>242 に賛辞を送りたい
へこむなよ > 242

255 名前:nobodyさん mailto:sage [2007/10/30(火) 14:34:37 ID:???]
>>253
>>248にも激しく同意だから
>>251は素直にそのままの意味で解釈した。

256 名前:nobodyさん mailto:sage [2007/10/30(火) 14:35:48 ID:???]
実際、>>245で突っ込みが入っているし

257 名前:nobodyさん mailto:sage [2007/10/30(火) 14:44:04 ID:???]
別に>>242がコードを書いて晒さなくてはいけない場面でもないのに、
勝手に晒して「それすらできないやつが」などどほざいた挙句、
すぐにつっこまれている奴に賛辞は送れないな

258 名前:nobodyさん mailto:sage [2007/10/30(火) 14:45:12 ID:???]
テンプレートエンジン厨は去れ

259 名前:nobodyさん mailto:sage [2007/10/30(火) 14:50:26 ID:???]
>>258
自作厨(笑)

260 名前:nobodyさん mailto:sage [2007/10/30(火) 15:02:18 ID:???]
フレームワークの話題スタート↓

261 名前:nobodyさん mailto:sage [2007/10/30(火) 15:06:27 ID:???]
フレームワークの話題フィニッシュ

262 名前:nobodyさん mailto:sage [2007/10/30(火) 15:07:25 ID:???]
>>260-261
ちゃんと/**/付けろよw



263 名前:nobodyさん mailto:sage [2007/10/30(火) 15:27:52 ID:???]
Smarty叩きとHTML_QuickForm叩きはこのスレの永遠のテーマだな

264 名前:nobodyさん mailto:sage [2007/10/30(火) 15:33:37 ID:???]
そんなこと言ったら今度はQF厨がくるかららめぇ

265 名前:nobodyさん mailto:sage [2007/10/30(火) 15:51:39 ID:???]
>>245
> つっこむのもなんだけど、 #{} の中に } が入るとエラーになるよ。
それは仕様。Perlじゃないから式の中に { } が出てくるのはまれ。実用上問題ない。<?= ?> とか <%=h %> よりはこっちのほうがいいと思うがの。
どうしても使いたいなら
<?php $var = ' } を使った式'; ?>
<span>#{$var}</span>
とすりゃあいい。もしくは改造するか。
でも file_put_contents() で LOCK_EX の指定ってできるんだ。知らなかった。サンクス。

>>248
問題はそこじゃない。この程度の関数で済むものを、わざわざ大げさでかつ大して便利でもないテンプレートエンジン使ってることを問題にしてるんじゃがの。
Smartyと同じ規模のものを自作関数で作ったというなら248のいうことももっともだが、たかが数十行に対してこの見解は的外れ。


266 名前:nobodyさん mailto:sage [2007/10/30(火) 15:55:34 ID:???]
数十行ごときのプログラムをバグ無しで書けないような奴は、どの道・・・。

267 名前:nobodyさん mailto:sage [2007/10/30(火) 15:56:55 ID:???]
( ^ω^)おっおっおっ

268 名前:nobodyさん mailto:sage [2007/10/30(火) 15:57:47 ID:???]
一連の流れが自作自演に見えてしまうwww

269 名前:nobodyさん mailto:sage [2007/10/30(火) 16:05:12 ID:???]
>>249
書き換えだけでも十分役に立つ。<?php echo htmlspecialchars() ;?> は頻繁に使う機能だから、それが簡潔になるのは大きい。
そもそも元のPHPが十分な機能をもっているんだから、あまり付け加える機能はない。
といいつつ、自分が使っているのはレイアウトテンプレートをサポートしているがの。

>>251
バグってどのこと?まさか>>245のことをいってるんじゃないよね・・・
もし
> #{} の中に } が入るとエラー
が問題なら、Smartyでも同じ問題おこるから、そっちのほうが大問題だがの。
Smarty派はそれについてはスルーかの。

>>252
数十行のコードすら自分でバグ直せないのか。。。そいつはすまんかった。話の前提が間違ってた。そういうことならSmartyでもなんでも人任せにできるものを使ってくれ。

わしにしたら、バグがあったとしても、小さい自作関数ならその場ですぐに直せるけど、Smarty規模になると自分ではなかなか直せんから、自作関数の方を選ぶがの。メンテナンスのことを考えた上で。
まさかSmartyにはバグがないとかいうやつはおらんと思うけど。

270 名前:nobodyさん mailto:sage [2007/10/30(火) 16:15:27 ID:???]
とりあえず、作ってみた姿勢は評価するんだけどね。
preg_replace()だけだからわざわざ作る必要も無い気がする。
(初心者には便利だわな。)

しかし、ここはフレームワークのスレなんだと何度言ったら(ry

・・・まぁ、ここにはフレームワークとテンプレートエンジンの区別も付かない奴しか居ないんだからしょうがないか。

271 名前:nobodyさん mailto:sage [2007/10/30(火) 16:26:18 ID:???]
>>269
>わしにしたら、バグがあったとしても、小さい自作関数ならその場ですぐに直せるけど
>>248の言っていることを一蹴している割に、ぜんぜん理解してないことがバレバレw

>>270
ふ〜ん、ごりっぱですね

272 名前:nobodyさん mailto:sage [2007/10/30(火) 16:27:11 ID:???]
最後の一行で煽ってるあたり、まだまだ論争を続けて欲しいように見受けられる。
270は嫌々言いながらも攻められるのが好きなドMなんだ。そうだろ?



273 名前:nobodyさん mailto:sage [2007/10/30(火) 17:08:04 ID:???]
>>265
最近のFWは<?php echo htmlspecialchars() ;?>なんてしないよ
アサイン時に一括エスケープするから
symfony,ci,モダンなFWはだいたいそう
smarty派も非smarty派もテンプレートエンジンに拘ってる時点で旧式
もしかして過去から書き込んでるのか?

274 名前:nobodyさん mailto:sage [2007/10/30(火) 18:10:13 ID:???]
>>273
未来からは書けないと思う。


275 名前:nobodyさん mailto:sage [2007/10/30(火) 19:05:37 ID:???]
なんだQuickFormも使いこなせない奴が多いんだな
馬鹿ばっかりか

276 名前:nobodyさん mailto:sage [2007/10/30(火) 20:06:47 ID:???]
フレームワーク採用する何て言ったら気絶しそうな勢いだな。

277 名前:nobodyさん mailto:sage [2007/10/30(火) 20:12:33 ID:???]
ツールを作る人間もいるというのに、使えただけで俺はすごいとか妄想できるって幸せだな

278 名前:nobodyさん mailto:sage [2007/10/30(火) 20:36:44 ID:???]
フレームワークに使われてる奴多いなププ

279 名前:nobodyさん mailto:sage [2007/10/30(火) 20:49:16 ID:???]
∩アイ

280 名前:nobodyさん mailto:sage [2007/10/30(火) 21:08:44 ID:???]
ソース読め的なレベルの質問で本当に申し訳ないのですが、DIコンテナを使用したフレームワークってどんな感じの作りになっているのでしょうか。
色々ググって見たのですが、スキルが低いため、説明を読んで見てもいまいちイメージ出来ません。(依存性の注入?とか。。)
シングルトンで各オブジェクトを引っ張って来てるみたいですが、このあたりが肝だったりするのでしょうか。
くだらない質問かと思いますがよろしくお願い致します。

281 名前:nobodyさん mailto:sage [2007/10/30(火) 22:57:38 ID:???]
>>280
Javaスレにいったほうがいいんじゃない?
そっちのほうが活発だから。

あとシングルトン自体はあまり肝じゃない。
ぶっちゃけ規約で制限してもできることだから。

282 名前:nobodyさん mailto:sage [2007/10/30(火) 23:00:33 ID:???]
>>277
> ツールを作る人間もいるというのに、使えただけで俺はすごいとか妄想できるって幸せだな

すでに存在するツールを作っても車輪の再発明と言われるように、
どんなアプリにも共通する土台(フレームワーク)を再発明したら馬鹿だろ・・・

使えるものは使わないとね。



283 名前:nobodyさん mailto:sage [2007/10/30(火) 23:01:41 ID:???]
テンプレートエンジンでもフレームワークでもこの際どっちでもいいんだけど、
それらを自作してるやつって一人で作ってるか、プロジェクトで自分の
作ったフレームワークが採用されたってことか?
なんかここの流れ見てると、プロジェクトの各メンバーが
「今回のプロジェクトでは俺の自作フレームワークを使おうぜ!」
となりそうな気がする。
プロジェクトで使うためのフレームワークを社内開発したというならまだわかるんだけど。


284 名前:nobodyさん mailto:sage [2007/10/30(火) 23:06:45 ID:???]
>>275
> なんだQuickFormも使いこなせない奴が多いんだな

QuickFormってたしか、コードでFormの項目にあたる部分を定義したら
それに相当するHTMLとチェックコードを生成してくれるライブラリだっけ?

コードでデザイン作るようなものでMVCになっていない。
これ使ってもデータベースと連携するところまでは楽にならない。
ということでフレームワークを使い始めてからは
こんなライブラリは使えないと思うようになったよ。

285 名前:nobodyさん [2007/10/30(火) 23:28:26 ID:N/0PbTQK]
フレームワークはいいんじゃね?Smartyがダメなだけで。

286 名前:nobodyさん mailto:sage [2007/10/30(火) 23:35:28 ID:???]
Smartyはただのテンプレートだから・・・
フレームワークのビューの部分でしかない。

287 名前:nobodyさん [2007/10/30(火) 23:35:47 ID:N/0PbTQK]
ああQuickFormとかは有り得ないと思ったな。
毎日毎日同じようなもの作るんだったら良いかもしれないけど、忘れた頃に作るとなるとマニュアル見て、('A`)メンドクセ

288 名前:nobodyさん mailto:sage [2007/10/30(火) 23:36:30 ID:???]
Quickformは一時期はまった
あの発想自体はいいと思う

289 名前:nobodyさん mailto:sage [2007/10/30(火) 23:43:01 ID:???]
最新のフレームワークを使ってないと過去の人らしい。
>>273
>アサイン時に一括エスケープするから
エスケープしたいのとしたくないのが混じってるときはどうするの?

290 名前:nobodyさん mailto:sage [2007/10/30(火) 23:48:16 ID:???]
>>289
rawコンテナみたいのも提供してるからそこから取り出すように出来てる
FWを使っていてエスケープせずに表示したかったことは
まったくといっていいほどなかった、というのは藤本神のお言葉

291 名前:nobodyさん mailto:sage [2007/10/30(火) 23:49:31 ID:???]
昔作ったSmarty+QuickFormな遺産があって今でもメンテしてる。
当時の俺にコンポーネント指向ってのが頭にあったらもう少し
うまく使いこなせてたんじゃないかなと思ってる。 > QF

292 名前:nobodyさん mailto:sage [2007/10/30(火) 23:50:32 ID:???]
>>283
>なんかここの流れ見てると、プロジェクトの各メンバーが
>「今回のプロジェクトでは俺の自作フレームワークを使おうぜ!」
>となりそうな気がする。
なるわけがないー
全員ひきこもりでコミュニケーション能力がないとその可能性はあるけど、
普通は互いに考えをぶつけ合ってひとつのものを作るわな。
たいがいは一人スキルの高い人がいて、その人が中心になるけどな。
283こそ創造的なプロジェクトの経験がなさそう(あったらごめんね、でも経験があればそんなこと書かないよ)



293 名前:nobodyさん mailto:sage [2007/10/31(水) 00:07:52 ID:???]
>>290
>rawコンテナみたいのも提供してるからそこから取り出すように出来てる
これ、blogやwikiみたいなの作るときは無駄過ぎね?
$html = parse_wiki($wiki);
みたいなのがあって、これをビューに渡して表示させたいとき、当然HTMLエスケープはせずに表示するよね。
でもアサイン時に一喝してHTMLエスケープしたら、$html も問答無用でエスケープされるんでしょ?
wikiやblogだと $html の中身は長くなるから、必要のないエスケープが毎回強制的に実行されるのはすごく無駄だ。エスケープ処理はけっこう重いよ?測ってみたらわかると思うけど。

>FWを使っていてエスケープせずに表示したかったことは
>まったくといっていいほどなかった、というのは藤本神のお言葉
それほんとか?
$html = nl2br(htmlspecialchars($text));
みたいなのしょっちゅう出てくるけど。
あとは<pre<で表示するコードを色付けして表示したいとき
<pre<<?php echo htmlspecialchars($code); ?></pre<
ではなくて
<pre<<?php echo parse_proram($code, 'javascript'); ?></pre<
にするし。
レイアウトテンプレートを使ったら当然エスケープしないし。


294 名前:nobodyさん mailto:sage [2007/10/31(水) 00:08:12 ID:???]
>>290
そりゃ作るシステムによりすぎだろう
WikiとかCMSみたいのとか作ってると
エスケープしたくない場合なんていくらでもあると思うよ

symfonyのESC_RAW引数とかは使い勝手がよく出来てるなーと思った
遅そうだけどキニシナイ

295 名前:nobodyさん mailto:sage [2007/10/31(水) 00:09:42 ID:???]
激しくカブったがキニシナイ

</pre<

なんか魚っぽいなw

296 名前:nobodyさん mailto:sage [2007/10/31(水) 00:12:55 ID:???]
>>292
いや、だから互いに考えをぶつけあって
社内開発用フレームワークみたいのを
作ってるんならわかるんだって。
もしくは個人でやってるなら別に好きにやればいいと思うし。
実際このスレの住人てどんなプロジェクトでやってるのかふと疑問に思ったんだよ。

297 名前:nobodyさん mailto:sage [2007/10/31(水) 00:21:44 ID:???]
>>289
やっぱり一括エスケープするのはよくないよ。
単にエスケープし忘れを防ぎたいとか、

298 名前:nobodyさん mailto:sage [2007/10/31(水) 00:28:39 ID:???]
サニタイズ言うなって人にエスケープは直前にやれって怒られるぜ

299 名前:nobodyさん mailto:sage [2007/10/31(水) 00:28:43 ID:???]
どこでもデフォでエスケープがデフォだな

300 名前:nobodyさん mailto:sage [2007/10/31(水) 00:29:22 ID:???]
>>294
システムによりけりってアンタ、掲示板ひとつ作るにしても nl2br(htmlspecialchars($text)) は出てくるだろ。
SNSでのプロフィール表示とか。
>エスケープせずに表示したかったことはまったくといっていいほどなかった
と言い切れるって今までどんなシステム作ってきたんだよ。

>>295
すまんかった

ところでsymfonyもCIも、一括エスケープされるのは強制的なの?
こんな余計な機能はいらないからオフにして、かわりに好きなテンプレートエンジンが使えるようにしてほしい。
もしオフにできないなら、CI使おうとおもってたけどやめようかな。

301 名前:nobodyさん mailto:sage [2007/10/31(水) 00:32:39 ID:???]
もはや自動エスケープは常識だと思ってた
そういう意見があったことのほうが非常に意外で興味深い

302 名前:nobodyさん mailto:sage [2007/10/31(水) 00:35:20 ID:???]
>>300
オンラインショップのバックエンドとか旅券発行システムとかで
エスケープ必要なかったシステムはいくつも見てきているけど
だからって「全くといっていいほど」とはとても思えない程度にはあったなぁ

CI知らないけどSymfonyではエスケープの方式をいくつかから選択できるよ
何もしない、闇雲に全部やる、
普通の表示は全部やるけど必要なものは別オブジェクトからrawで取り出す、など。



303 名前:nobodyさん mailto:sage [2007/10/31(水) 00:41:28 ID:???]
失敗してたので再投稿。

>>290
やっぱり一括エスケープするのはよくないよ。
単にエスケープし忘れを防ぎたいとか、htmlspecialchars() が面倒というだけなら、ビューがデフォルトでエスケープするようになってればいいだけ。
素のPHPはそうなってないけど、そうなっているようなテンプレートエンジンを選べばいいだけの話。
一括エスケープは、目的のための手段のひとつに過ぎない。手段はほかにもあるし、一括エスケープが最適な方法とは思えない。

なんか最新のフレームワークでそうなっているからとか、えらい人がそう言ったからとか、そんなことで決めてないか?
>>290からはそんな匂いがプンプンする。
もし最新のフレームワークがSmarty使ってたら、または○○神がSmarty使ってたら、Smarty使うことが最高の方法ということになるのか?

でもSymfonyもCIも一括エスケープが基本なのか。CI使おうと思ってたけど萎えた。
こんな機能いらんから、テンプレートエンジンが自由に選べられるようにしてほしい。
オフにできるならCI使ってみる。


304 名前:nobodyさん mailto:sage [2007/10/31(水) 00:43:24 ID:???]
チームでやるには必須
どんなに注意してもかならず誰かやらかすよ
XSSの歴史がそれを証明してる

305 名前:nobodyさん mailto:sage [2007/10/31(水) 00:43:47 ID:???]
>>302
>CI知らないけどSymfonyではエスケープの方式をいくつかから選択できるよ
これいいね。Symfonyにしようかな。

306 名前:nobodyさん mailto:sage [2007/10/31(水) 00:48:38 ID:???]
FW自身の評判にかかわるから強制するって側面があるだろう。
トータルで見たらエラーの量を低減するのは明らかだからね。

307 名前:nobodyさん mailto:sage [2007/10/31(水) 00:51:23 ID:???]
一括エスケープするよりしない方が簡単なんだから
したくないならそりゃしないでもいいだろう
ってか>>303の決めつけにワロタ
思いこみの深さからいうと昨日のアニヲタ君かな?
君の方が権威に弱そうだったから権威っぽい名前を出しただけのことだよw

308 名前:nobodyさん mailto:sage [2007/10/31(水) 00:53:26 ID:???]
ビューでエスケープは勘弁してほしい
ベッキーがなんと言おうとこれだけは譲れない

309 名前:nobodyさん mailto:sage [2007/10/31(水) 00:54:51 ID:???]
アウトプット前提でデータ割り当ててるんだから同じだろ?
何が問題なのかさっぱり分からん。

310 名前:nobodyさん mailto:sage [2007/10/31(水) 01:07:20 ID:???]
>>293
詳しい処理見た訳じゃないが、
フレームワーク作者的に言えば
アサイン時にエスケープの有無は選べるように普通するだろ
そんなの考えたらすぐ分かるじゃん
少なくともテンプレートの層でエスケープするより
入り口でエスケープするアプローチの方がスマートだと俺は思うね。

311 名前:nobodyさん mailto:sage [2007/10/31(水) 01:13:25 ID:???]
エスケープの有無を選択するのにVを操作するよりは依存性が低いということかな?
データの加工をV前に済ます(Vは極力弄らない)という点からみるとそのほうが妥当かも。

312 名前:nobodyさん mailto:sage [2007/10/31(水) 01:17:50 ID:???]
(Vは極力弄らない)で思ったんだけど、
ビューのなかで繰り返しのコード(for等)をなくすアイデアない?



313 名前:nobodyさん mailto:sage [2007/10/31(水) 01:19:31 ID:???]
Amritaみたいのを自分で作る、とか。

314 名前:nobodyさん mailto:sage [2007/10/31(水) 01:27:43 ID:???]
煽り的に藤本氏の言葉を出したのは適切じゃなかったな
変に叩かせてしまった
面識はないけどすみません
要は、藤本氏の言葉は、ホワイトリスト方式の方がいいよという文脈だった
俺もそう思う

315 名前:nobodyさん mailto:sage [2007/10/31(水) 02:25:14 ID:???]
EthnaもSmartyも使ってないけど、
Ethna的にはnl2br()はSmartyのnl2br修飾子を使うんだと思う。

316 名前:nobodyさん mailto:sage [2007/10/31(水) 03:03:20 ID:???]
QFやらSmartyやらといえば、

ttp://blog.enjoitech.jp/detail.php?aid=128

ここで普通にQF2使ってるんだけど、
QF2の状況ってどんな感じなのかしら。
ちょっと前にみたらバージョンがえらく低かったんで、
まだまだ実用外だと思っていたんだが。

QFはアイディアは面白いと思うのよ。
色々と問題はあるけど。


317 名前:nobodyさん mailto:sage [2007/10/31(水) 09:59:12 ID:???]
>308
MVC的にはエスケープはViewがやるのが正しいんでないの?
ViewがHTMLとは限らないんだから、
どんなエスケープ処理が必要か知ってるのはViewだけであるべきでしょ。

318 名前:nobodyさん [2007/10/31(水) 10:41:33 ID:WWjGeZUw]
php da rox!

319 名前:nobodyさん mailto:sage [2007/10/31(水) 10:44:11 ID:???]
>>242
$file = $tpl_dir. 'template.tpl';
if (!file_exists($file)) {
$contents = preg_replace(
array(
'/^<\?xml/',
'/#\{(.*?)\}/',
'/%\{(.*?)\}/'
),
array(
'<<?php ?>?xml',
'<?php echo $1; ?>',
'<?php echo htmlspecialchars($1); ?>'
),
file_get_contents($file)
);
file_put_contents($file, $contents);
}
include $file;
こんな感じか。変数がかぶるとかなら関数作って渡せばいいだけやね。
うちだと、symfonyのviewの部分に、こんな感じのを作って入れてる。
(といってもそのままじゃなくて、<input />等のタグを、ヘルパに変換して代入する処理も入れてる訳だけど。

320 名前:nobodyさん mailto:sage [2007/10/31(水) 10:44:52 ID:???]
インデント無くなってるのスマソ(汗)

321 名前:nobodyさん mailto:sage [2007/10/31(水) 10:52:17 ID:???]
だから一括してエスケープするのは問題があるってかいてるじゃん。
エスケープ漏れをなくしたいなら、view側がデフォルトでエスケープする仕様になってればいいだけ。
それで十分だし>>293のような問題も起きない。
それでも一括エスケープの方がいいという根拠は何?

322 名前:nobodyさん mailto:sage [2007/10/31(水) 14:54:05 ID:???]
>>317
そういうロジックをViewでやるからSmartyはうんこなんだよ



323 名前:nobodyさん mailto:sage [2007/10/31(水) 14:58:56 ID:???]
セキュリティや出力方法の変更は、VでやろうがCでやろうが同じでFA

324 名前:nobodyさん mailto:sage [2007/10/31(水) 15:16:03 ID:???]
>>322
別にViewでやったっていいだろ?
テンプレートコーディングがうんこだと言うのは認めるが。

アサイン時のオートエスケープがどうか?という提起なのであって、
それをやるオブジェクトがViewだろうとControllerだろうとWebアプリじゃ違いはないじゃん。

あと文句言ってる奴はちゃんとオートエスケープの実装と意図を見てから言えよ。
かなり的外れになっちゃってるぞ。

325 名前:nobodyさん mailto:sage [2007/10/31(水) 15:18:09 ID:???]
お前ら年中言い争ってるのな

326 名前:nobodyさん mailto:sage [2007/10/31(水) 15:30:13 ID:???]
>>325
だって、ばかばっかだし

327 名前:nobodyさん mailto:sage [2007/10/31(水) 15:44:34 ID:???]
知識に関しては知らんが、いちいち言い争ってるのは確かに馬鹿っぽい。

328 名前:nobodyさん mailto:sage [2007/10/31(水) 15:47:17 ID:???]
馬鹿ばっかじゃないよ。分かってる奴は書き込まないだけ

329 名前:nobodyさん mailto:sage [2007/10/31(水) 16:06:33 ID:???]
結局何がお勧めなの?

330 名前:nobodyさん mailto:sage [2007/10/31(水) 16:27:25 ID:???]
cake。

331 名前:nobodyさん mailto:sage [2007/10/31(水) 16:28:08 ID:???]
>>329
俺はCakePHP。
本もでたし。

332 名前:nobodyさん mailto:sage [2007/10/31(水) 16:32:49 ID:???]
Cakeは型に嵌ると強いね



333 名前:nobodyさん mailto:sage [2007/10/31(水) 17:18:03 ID:???]
CとVをパツパツに切れると思ってる奴は幻影を見ている

334 名前:nobodyさん mailto:sage [2007/10/31(水) 17:18:17 ID:???]
なあ、今CodeIgniter試してみたんだけど、一括してエスケープする機能ってあるか?
$_POSTと$_COOKIEのデータを自動的にエスケープする設定はあるみたいだが、まさかこれのことではないよな?
テンプレートを出力するときに勝手に一括エスケープされるのかと思ったけど、そうでもないみたいだし。
$data = array('var'=>'<b>FOO</b>');
$this->load->view('blogview');
とかしてみたんだけど、テンプレートでは $var はエスケープされてなかった。

モダンなフレームワークであるCodeIgniterでは一括してエスケープしてくれるから htmlspecialchars() は使う必要ないと>>273が語ってくれてるんだけど、見つからん。
もちろん>>273は知ってるはずだから、すまんがさくっと教えてくれ>>273


335 名前:nobodyさん mailto:sage [2007/10/31(水) 17:25:15 ID:???]
>>324
>あと文句言ってる奴はちゃんとオートエスケープの実装と意図を見てから言えよ。
>かなり的外れになっちゃってるぞ。
なにがどう的外れか書かないと、おまえこそ的外れだといわれるぞ。
オートエスケープ?の問題点が指摘されてるんだが、解決策は示されてない。
問題点が問題点でないというなら、解説希望。


336 名前:nobodyさん mailto:sage [2007/10/31(水) 17:26:23 ID:???]
>>334
記憶は定かではないが、今見てないならないのかもな
自分で拡張したciに実装しただけかもしれん
ciって筋はいいけど、ちょっと機能的には弱いだろ
まあいずれにしろテンプレートレベルでエスケープするのは
いい方策ではないと思うがな

337 名前:nobodyさん mailto:sage [2007/10/31(水) 17:27:32 ID:???]
>>335
いいから実物見てみろって。説明で判った気になったってしょうがないだろ

338 名前:nobodyさん mailto:sage [2007/10/31(水) 17:32:33 ID:???]
>>329
Zendでいいじゃん
ダイヤブロックみたいで組み立てるの楽しいよ

339 名前:nobodyさん mailto:sage [2007/10/31(水) 17:36:36 ID:???]
ダイヤブロックワロタw
レゴじゃないんだよな
なんかパーツがでかいっていうか

340 名前:nobodyさん mailto:sage [2007/10/31(水) 17:43:01 ID:???]
今作ってる俺俺FWでもZend方式でいきたいんだよね
コンポーネント間で依存性をほとんどなくしたい
ただ設定クラスとかContextを作ると、そこに依存性が生まれてしまう
何にも依存してないコンポーネント群を、
それらに依存するコアコンポーネントが動かす形にしようかとか考えてる

341 名前:nobodyさん mailto:sage [2007/10/31(水) 17:48:56 ID:???]
ダイヤブロック(笑)とかお前おっさんだろ

342 名前:nobodyさん mailto:sage [2007/10/31(水) 17:50:36 ID:???]
依存性ってそんな問題かな
どのくらいからDI系コンテナのメリット出てくるんですかね



343 名前:nobodyさん mailto:sage [2007/10/31(水) 18:01:53 ID:???]
疎結合の方が副作用も少なくなるし
ユニットテストも書きやすくなる
依存が多いとモックとか用意するの面倒だ
DIコンテナとかは要らないと思うけど

344 名前:nobodyさん mailto:sage [2007/10/31(水) 18:08:30 ID:???]
独立したコンポーネントにしておけば
フレームワークのフレームワークにすることが出来るから
フルスタックFWの「この機能だけ欲しい」ってなっても
それだけを切り離すことは難しいから
ごっそり捨てるはめになる






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<226KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef