トップページ⇒php
1001コメント302KB

[PHP]フレームワークについて語るスレ2[総合]

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2005/12/29(木) 18:03:44ID:PQZNoJbD
::フレームワーク一覧::
■Phrame
http://phrame.sourceforge.net/
■Mojavi Project
http://www.mojavi.org/
■Agavi
http://agavi.org/
■[ 日本発 ] Maple Project
http://kunit.jp/maple/
■[ 日本発 ] Ethna -PHPウェブアプリケーションフレームワーク-
http://ethna.jp/ethna-tutorial-startup-practice1.html
■[ 日本発 ] guesswork
http://www.guesswork.jp/
■Biscuit
http://bennolan.com/biscuit/
■PHP on TRAX
http://phpontrax.com/
■Web Application Component Toolkit (WACT)
http://www.phpwact.org/
■symfony
http://www.symfony-project.com/
■XOAD
http://wiki.xoad.org/index.php?title=Wiki_Home
■[ 日本発 ] pokox
http://www.glamenv-septzen.net/pukiwiki/index.php?pokox
■[ 日本発 ] 速構Web Framework
http://www.pm9.com/newpm9/itbiz/php/framework/
■CakePHP
http://cakephp.org/
0496nobodyさん2006/03/09(木) 22:20:05ID:???
>>489
>客がZF使えって言い出した場合の話しではなかったのか?
自分が仕切る側になれば、そんな客とらなくていいだろw
現状WEB開発の仕事なんて腐るほどあるし、そんな客から仕事貰う必要がどこにあるの?
0497nobodyさん2006/03/09(木) 22:23:25ID:???
>>496
PHPでのWeb開発の仕事って腐るほどあるか?
あっても金安くね?
0498nobodyさん2006/03/09(木) 22:24:43ID:???
>>497
なんでPHPに限ってるの?
0499nobodyさん2006/03/09(木) 22:26:44ID:???
>>497
まず話の流れを理解しよう
0500nobodyさん2006/03/09(木) 22:49:38ID:???
>>498、>>499
は?ZFの話してるんだろ?
0501nobodyさん2006/03/09(木) 22:51:55ID:???
自分が有能なふりして(あるいは本当に有能でかつ性格悪いかで)
話の前提を壊して話題を逸らす人って鬱陶しいですよね
0502nobodyさん2006/03/09(木) 22:54:56ID:???
どこからともなく精神論持ち出す人も鬱陶しいですよ
0503nobodyさん2006/03/09(木) 22:57:01ID:???
ZFとは関係ないんだけど
http://hogehoge.net/action名/
みたいにしたいときってmod_rewrite使うしかないでうか?
0504nobodyさん2006/03/09(木) 23:00:00ID:???
>>503
まあそうだろうね。
0505nobodyさん2006/03/10(金) 11:43:28ID:???
>>503
詳しくは知らないが、AliasMatchって使えんかな?
試してないでスマンが
AliasMatch ^/(action1|action2|action3) /var/www/html/$1/index.php
とか
0506nobodyさん2006/03/10(金) 13:38:04ID:???
いずれにせよ、スレ違い。
0507nobodyさん2006/03/10(金) 16:07:05ID:???
zendにもRailsのconfig/routes.rbみたいのあればいいのに
0508nobodyさん2006/03/10(金) 16:43:46ID:???
>>500
は?だったら>>497みたいなレスありえんだろ?
0509ヽ(´ー`)ノ ◆.ogCuANUcE 2006/03/10(金) 17:37:36ID:???
>>507
Zend_Controller_Router_Interface を継承してそういう Router クラスを
作って、置き換えたら?

Zend_Controller_Router は何で Zend_Controller_Router_Interface を
継承してないんだろう…。
0510nobodyさん2006/03/10(金) 18:15:22ID:???
ZF wikiとかZF ユーザ会とかできるかな?
0511nobodyさん2006/03/10(金) 19:09:52ID:???
ブログで見たんだけど
Symfonyのヘルパーはグローバル関数らしいね。
グローバルをView用の空間に使うなんて大胆だけど
ありっちゃありかもしれないなぁ
俺フレームワークでもそうしようかな…
0512nobodyさん2006/03/10(金) 19:21:23ID:???
(´・ω・`)しらんがな
0513nobodyさん2006/03/10(金) 21:03:50ID:???
DBから取ってきたコンテンツをサニタイズとか改行コードを<br />にする処理は
どこでやってますか?
ViewかActionかModelで迷ってます。
0514nobodyさん2006/03/10(金) 21:16:40ID:???
>>509
> Zend_Controller_Router は何で Zend_Controller_Router_Interface を
> 継承してないんだろう…。

それのせいで引数が渡せなくてフロントコントローラが動かないんだよね。
しかもメソッドの実装が両者で微妙にズレてるし。
無理やり書き換えたらいちおうアクションメソッドまで呼び出せたけど、やっぱりちゃんとドキュメントとか出てからにしようと思った。

>>513
サニタイズはDBに保存する前にやるのが普通。
nl2brはDBからとってきた後にやる設計でやってるならビューで。
0515nobodyさん2006/03/10(金) 21:16:50ID:???
>>513
<br>はviewじゃない?
0516nobodyさん2006/03/10(金) 21:21:26ID:???
> サニタイズはDBに保存する前にやるのが普通。

うそ?
SQLのサニタイズは、SQL発行直前
HTMLのサニタイズは、出力前

というのが基本と思っていたけど...
どっかに書いてなかったっけかな
後で調べてみる
0517nobodyさん2006/03/10(金) 21:25:27ID:???
>>516
それで合ってる。
0518nobodyさん2006/03/10(金) 21:32:34ID:???
>>516
あーサニタイズってそういう意味で言ってたのか。
で、HTMLの整形だとわかっててView以外でやる理由はどこにあるの?
0519nobodyさん2006/03/10(金) 22:19:12ID:fDWXlAX4
>>509
>>514

0.1.2 で継承してるよ
0520nobodyさん2006/03/10(金) 22:57:53ID:???
HTMLってサニタイズなんて言葉使ったっけ?
0521nobodyさん2006/03/10(金) 22:58:46ID:???
zend使うか自分で作るか悩むな〜
0522nobodyさん2006/03/10(金) 23:06:01ID:???
>>521
おまえの作ったやつって誰が使うの?
0523nobodyさん2006/03/10(金) 23:13:04ID:???
>>522
自分で使うんだよw
0524nobodyさん2006/03/10(金) 23:17:35ID:???
>>523
あぁ、なるほど趣味ね
0525nobodyさん2006/03/10(金) 23:21:37ID:???
>>524
そうです趣味です
0526nobodyさん2006/03/10(金) 23:26:49ID:???
zend待つか・・・
0527nobodyさん2006/03/11(土) 00:31:33ID:???
お前らは「サニタイズ言うなキャンペーン」でも読め。
0528nobodyさん2006/03/11(土) 01:12:15ID:???
>>527
あれはどうしようもない素人が書いてるから無視
0529nobodyさん2006/03/11(土) 01:13:33ID:???
>>528
お前よりは玄人
0530nobodyさん2006/03/11(土) 01:18:06ID:???
>>528
いま丁度読んでたんだけど
もし良ければ具体的な突っ込み所を知りたい
0531nobodyさん2006/03/11(土) 01:32:33ID:???
書いてることは大体間違って無いけど、書いてるコードがキモかったので俺は敬遠してる
>>528の理由知りたい
0532nobodyさん2006/03/11(土) 01:43:18ID:???
>>531
確かにPHPは変な書き方してるよね
あまり使ったこと無いんだと思って変に納得した記憶があるけど・・・
0533nobodyさん2006/03/11(土) 01:48:14ID:???
言いたいことは分かるんだが、じゃあなんて置き換えればいいのか悩む
セキュアプログラミングは当たり前だから言うこと自体がおかしい、といわれても
実際そういう処理がどこかにあるわけだし・・・
0534nobodyさん2006/03/11(土) 01:48:42ID:???
つか、あれは極端な例だろ?
本人だって、まさかあれをそのまま使わせるつもりはないだろうし。
0535nobodyさん2006/03/11(土) 01:52:14ID:???
>>533
良く読め、ちゃんと書いてある。
浩○に怒られるぜwww
0536nobodyさん2006/03/11(土) 02:29:09ID:???
eRuby の「h」はいいよね。
0537nobodyさん2006/03/11(土) 02:56:17ID:???
最近よくある

[大タブ1][大タブ2][大タブ3]
小タブ1 小タブ2 小タブ3

こんなナビゲーション作る時(例:Appleのサイト)は、
大タブ用Actionと小タブ用Actionを、
コンテキスト用Actionからforwardするのが普通?
0538nobodyさん2006/03/11(土) 05:27:27ID:???
ZFのマニュアル読んでってるけど
分かりやすいね。
Mojavi系よりとっつきやすそうな印象。
0539nobodyさん2006/03/11(土) 07:09:35ID:???
>>537
お前の想定しているFWはなんだ
0540nobodyさん2006/03/11(土) 07:55:17ID:???
>>539
M2だよ
0541nobodyさん2006/03/11(土) 10:17:59ID:???
ZFさらっと見た印象では
フレームワーク内でも疎結合を目指してるんだね。
理解しやすい反面、とっちらかった感じもある。
他のフレームワークは
PHPをラッピングしようとしてるけど
ZFは生PHPそのままでいい部分はそのまま使おうという感じ。
フレームワーク固有の知識習得のハードルを
出来るだけ低くしておこうというのは、
戦略としてはアリと思う。
0542nobodyさん2006/03/11(土) 12:05:32ID:???
Mojavi系みたいに最終的にはZFをベースにしたフレームワークが出回りそうな感じだな。
0543nobodyさん2006/03/11(土) 13:28:35ID:???
え、MojaviってZFをベースにしてたの?
0544nobodyさん2006/03/11(土) 13:31:08ID:???
>>543
mojaviをベースにしたFWが何個も出たように
ZFをベースにしたFWが出回るってことじゃない?
0545nobodyさん2006/03/11(土) 13:32:38ID:???
>>544
おk。理解した。
0546nobodyさん2006/03/11(土) 15:45:01ID:???
Mojavi3やAgaviではActionChainがなくなったってホント?
やっぱりいらない機能だから無くしたってことなのかね。
0547nobodyさん2006/03/11(土) 18:01:26ID:???
>>546
ほんと。 それぐらい自分で調べないでどうする
0548nobodyさん2006/03/12(日) 02:38:02ID:???
ActionChainの代替がDecorator
0549katayama2006/03/12(日) 03:05:16ID:???
有限会社レアル
http://www.e-real.jp/
SE募集 Fedora Core + Apache + MySQL + PHP
自注の場合はクライアントに合わせる
勤務場所 ご自宅
雇用形態 正社員 アルバイト フリーランス 副業

WEBアプリケーション開発をしている会社で、簡単な資料を基に仕様書を作成し、翻訳家を通してセブのPGに作業させて、完成させる。

若い会社です。一緒に夢を追いかけませんか?
0550nobodyさん2006/03/13(月) 09:58:15ID:???
>549
転送メアドワロス(w
0551nobodyさん2006/03/13(月) 23:11:51ID:???
スレ違いもほどほどにして欲しいな、宣伝とか
0552nobodyさん2006/03/14(火) 10:19:56ID:???
http://framework.zend.com/manual/zend.controller.getting-started.html
ここ見ながら構築してみたんだけど

Fatal error: Call to undefined method Zend_Controller_Front::run()

って言われる。誰か助けて
0553nobodyさん2006/03/14(火) 10:32:44ID:???
>>552
runって懐かしいよな。F5かよ。
0554nobodyさん2006/03/14(火) 10:35:16ID:???
ZendFrameworkのチュートリアル
http://phparch.com/zftut/
0555nobodyさん2006/03/14(火) 14:06:31ID:???
>>552
require 失敗してるんじゃね?
>>554 のチュートリアルにもあるけど、 require 'Zend.php' して、
Zend::loadClass() する方がいいと思う。
0556nobodyさん2006/03/14(火) 19:25:50ID:???
>>554
公式にリンクあるのになんでわざわざ載せるの?
0557nobodyさん2006/03/14(火) 21:27:24ID:???
Eclipse PHP IDE
http://www.eclipse.org/proposals/php-ide/

これってZFが使えるって言ってたやつ?
0558nobodyさん2006/03/14(火) 22:03:34ID:???
>>557
それ俺は楽しみにしてるんだけどいつ出来るのやら…
0559nobodyさん2006/03/15(水) 10:57:42ID:???
ZF、いまのところ複合View実現する方法が提示されてないね
forwardとかdecoratorとか
0560nobodyさん2006/03/20(月) 01:48:41ID:???
ZFなんてキモくて流行りそうもねーな。
0561nobodyさん2006/03/20(月) 01:54:10ID:???
いじくってみたけど、そこまでキモイとは思わなかったな。
未完成って感じはするけど。
0562nobodyさん2006/03/20(月) 07:45:56ID:???
俺としてはなかなか好印象
0563nobodyさん2006/03/20(月) 18:48:14ID:???
モジュール+アクションとアクションのみってどっちがいいですか?
俺フレームワークではアクションのみでやっているんですけど、
モジュールもあった方が便利ですか?
0564nobodyさん2006/03/20(月) 19:30:44ID:???
用途によるだろ
0565nobodyさん2006/03/20(月) 19:33:39ID:???
用途っちゅーか規模によるな
0566nobodyさん2006/03/20(月) 21:33:13ID:???
アプリの規模と開発チームの規模の両方な


モジュールでナントカ空間を分割するんでお互い干渉しませんなんてのも
実際には命名規則だけで普通に問題なかったりするんで
あってもなくてもいいけどあった方が便利って程度じゃないかと思う
0567nobodyさん2006/03/21(火) 00:53:32ID:???
モジュールなんて概念はいらない。
hiddenでactionとmoduleの二つのパラメータを
持ちまわすのか?うぜぇ。
アクション名にいろいろな意味を持たせればいいじゃん。
ホントMojaviの作者はセンスねーよ。
0568nobodyさん2006/03/21(火) 05:02:01ID:???
>>567
へルパでどうにかすりゃいいじゃん。
ほんとセンスないねおまえw
0569nobodyさん2006/03/21(火) 05:50:58ID:???
パラメータ一つだろうが二つだろうが
たいして変わらんやん
言ってる意味が分からん
moduleがないと一つのディレクトリが
Actionだらけになって視認性が低下するしな
0570nobodyさん2006/03/21(火) 14:16:38ID:???
例えば、訪問者用ページと管理者用ページ、とかだと、
いくら命名規則とかあっても、同じ名前空間にあるのはキモイ。
まぁ、サーバーごと別にする場合もあるだろうが。

でもそもそもモジュール名をhiddenとかで持ち歩く必要性は無いよな。
例えばSCRIPT_NAMEとか使って、 hoge.php にアクセスされたら
define('MODULE_NAME', 'hoge') になるような設計でいい気がする。
0571nobodyさん2006/03/21(火) 14:21:52ID:???
つーかMojavi系でモジュール名やアクション名ってhiddenフィールドに入れるのが一般的なの?
普通にURIのクエリストリング中($_GET)かパス(mod_rewrite)に入れればいいだけの話だと思ってたけど。
0572nobodyさん2006/03/21(火) 14:30:42ID:???
>>570
でも結局は大抵は「同じファイルシステム空間にある」ってことになりそうだよ

action しかないフレームワークでも
hoge.php にアクセスされたら "hoge_{$action}" って action に行くようにすれば
やっぱ命名規則でどうにかなる問題な気がする

ものによって「別モジュールにすると何を分割できるか」が違うだろうから難しいけど
どうしてもモジュールが必要になるのってどんな場合なんだろう……
0573nobodyさん2006/03/21(火) 15:21:02ID:???
分割統治せよ。

mojaviなんぞなら、フィルタの適用を変えるとかいろいろ。
0574nobodyさん2006/03/21(火) 16:01:16ID:???
>>572
同意。actionの命名規則でどうにでもなるからmoduleなんか必要なし。
0575nobodyさん2006/03/21(火) 16:19:50ID:???
「モジュール」って考え方自体がそもそも必要性を求めるものじゃないよ。
理屈の上だけではたった一つのPHPファイルで全てを処理することも可能なわけだし。

俺はFWには普通にモジュールあったほうがわかりやすいし管理しやすいと思うけどね。
そんなに必要のなさが気になるなら使わなければいいし。
「命名規則でどうにでもなる」なんて、程度の差こそあれ「マシン語で何でもできる」と言っているのと同じようなもの。
こういうのは適材適所でいいよ。
0576nobodyさん2006/03/21(火) 19:19:43ID:???
hiddenに入れるってどういうこと?
ページ遷移を必ずpostで行うのか?
0577nobodyさん2006/03/21(火) 19:23:42ID:???
moduleいらなかったら
全部Defaultにほうりこんでactionだけ使えばいい
あって困るもんじゃない
0578nobodyさん2006/03/21(火) 22:46:05ID:???
でもmodule名は指定しないといけないだろ?
0579nobodyさん2006/03/21(火) 22:49:30ID:???
モジュール機能を提供してる大抵のフレームワークは
モジュール名が指定されなかった時に
デフォルトモジュールを決める手段を何かしら提供してるんじゃないかな?
0580nobodyさん2006/03/22(水) 01:12:30ID:???
>>578
それじゃ何のためのデフォルトだよw
省略された時に補完されるのがデフォルトの意義だろ
0581nobodyさん2006/03/23(木) 21:38:30ID:???
Mojaviでforwardするとき、
RequestParameterがパラメータコンテナに使われるみたいけど
セキュリティー的にどうなんだろ?
forward用のActionが外から直呼びされたりしたらヤバスな感じがするんだが
0582nobodyさん2006/03/23(木) 22:54:41ID:???
>>581
setAttribute/getAttributeを使うのでは?Mojavi2止まりなので間違っていたらごめんなさい。
0583582 2006/03/23(木) 22:56:43ID:???
補足。setAttributeで目印を付けてgetAttributeで確認するという意味です。
0584nobodyさん2006/03/24(金) 02:16:08ID:???
やっぱりそんな感じにするしかないかな
直接呼び出し禁じる設定メソッドがあればいいんだけど
isSubAction?とか
0585nobodyさん2006/03/24(金) 09:21:47ID:???
>>584
アクションクラスにメソッドを準備すると仮定すると、アクションクラスがイ
ンスタンス化されるまでチェック不可能なので、Mojavi2なら
ExecutionFilterに手を入れる形になる。
それ以外の手としてはどこかに置いてある直接アクセス許可/禁止リストを
チェックするグローバルフィルタを準備することもできるかな。
0586nobodyさん2006/03/25(土) 04:12:40ID:???
>>581
forwardされたのか直接読まれたのかをRequestのパラメータmoduleとactionから判断すればよろしい。
0587nobodyさん2006/03/25(土) 09:33:02ID:???
フレームワーク比較表だって
http://lnx.googlewrite.com/chart.php
0588nobodyさん2006/03/25(土) 13:57:45ID:???
>>587
何語ですか?w
0589nobodyさん2006/03/25(土) 14:29:31ID:89IwyN4m
http://www.phpit.net/article/ten-different-php-frameworks/
こちらは、えいご
0590nobodyさん2006/03/26(日) 19:04:39ID:CBEzlswa
みんな ZF いじってる?
0591nobodyさん2006/03/26(日) 19:06:12ID:???
>>590
hello, worldまではやったけど、最近別のことで忙しいので後回し。
0592nobodyさん2006/03/26(日) 19:07:44ID:CBEzlswa
Agavi にするか symfony にするか ZF を待つか迷ってます。。
0593nobodyさん2006/03/26(日) 20:16:09ID:???
ZFはたいしたことないから、symfonyを強くお勧めする。
0594nobodyさん2006/03/26(日) 21:56:31ID:DeU9y+sO
それでは symfony でいこうかな。
ただ、 Agavi/Mojavi とはちょっと勝手が違うようなので、
慣れるまで時間かかるんじゃないかと少し不安です。

ZF は今のところ微妙ですよね。
まだ Preview の段階なのでなんとも言えませんが。
私的には Controller の中に Action をずらずらっと書くのが好きになれません。
mod_rewrite を強制している(?)のもどうかと。
0595nobodyさん2006/03/26(日) 22:05:02ID:???
この間のwebcastではmod_rewriteには依存しないって言ってたのにどうなっちゃったのかね?>ZF
0596nobodyさん2006/03/26(日) 23:06:30ID:DeU9y+sO
おそらく「依存しない」というのは、 mod_rewrite で
RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php
として、
URL/コントロール名/アクション名/
でアクセスさせるからだと思います。(違ってたらごめんなさい)

ここに理屈が書かれています。
http://revilog.com/program/2006/03/006937.html

ここでは REQUEST_URI を PATH_INFO に差し替えて…なんてことをしているようです。
http://tdiary.ishinao.net/20060322.html#p01

フレームワークを使う人なら mod_rewrite に慣れているはずだから、
わざわざフレームワーク側でしなくても…って思ったんです。
■ このスレッドは過去ログ倉庫に格納されています