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

lt;?php フレームワーク symfonyのスレ ?gt;

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2006/07/03(月) 23:36:42ID:???
■symfony
http://www.symfony-project.com/

■askeet
http://www.symfony-project.com/askeet

■The symfony book
http://www.symfony-project.com/content/documentationHome.html

■symfonyで作られたサイトはこちら
http://www.symfony-project.com/trac/wiki/ApplicationsDevelopedWithSymfony

どうぞ。
0002nobodyさん2006/07/04(火) 00:01:49ID:???
<うへぇ>
0003nobodyさん2006/07/04(火) 00:20:53ID:???
ご苦労
0004nobodyさん2006/07/04(火) 00:50:02ID:???
とうとう立ったのはいいが専ブラで見るとダサいぞ
0005nobodyさん2006/07/04(火) 03:23:34ID:???
欲しいSQLと違っても、propelでの組み立て方が分からないから
違うSQLで妥協した、ということはないか?
俺はある。
0006nobodyさん2006/07/04(火) 04:51:13ID:???
>>5
ほしいSQLを言ってみてくれ。
0007nobodyさん2006/07/04(火) 07:55:01ID:???
>>6
select count(*) from table where hoge = 'fuga'
みたいな、件数取得のSQL。
0008nobodyさん2006/07/04(火) 15:26:42ID:BSvBzg2e
>>1乙です。
専用スレで、分からないこともどんどん聞けるな。
しかし、スレタイはひどいwww
lt;?php フレームワーク symfonyのスレ ?gt;
ってさぁ。
0009nobodyさん2006/07/04(火) 17:23:37ID:???
propelはTorqueのインスパイヤと聞きましたが
参考になりそうなTorqueサイト/本ってある?
0010nobodyさん2006/07/04(火) 17:53:36ID:???
>>9
WEB+DBマガジン総集編にいくつかTorqueの記事あるよ。
あとはcriteriaのソース見て推測したりしてる。
ネットで探したりもしてるけど全般に資料すくないねー。
0011nobodyさん2006/07/04(火) 20:02:23ID:???
schema.xmlを記入してちゃんと設定すると意外にすんなり記述できるね。
0012nobodyさん2006/07/04(火) 22:32:42ID:???
鯖をwindowsのapacheで開発している人いる?
ローカルのテスト環境でwinのapacheで開発して

正式版はlinuxとか問題ないですか。
0013nobodyさん2006/07/05(水) 01:18:32ID:???
>>12
その環境で開発してるけど、
windows用のバッチファイルも付いてるくらいだから、
開発段階ではそんなに問題ないと思う。
0014nobodyさん2006/07/05(水) 02:26:30ID:???
>>7
おいおいおいおいおいおい
書き出されたものくらい見ようぜ!!

$table=new Table;
$table->setHoge('fuga');
$c=$table->buildCriteria();
$count=TablePeer::doCount($c);

これでできるぜ!!!
多分ね
0015nobodyさん2006/07/05(水) 02:41:24ID:???
>>14
ほんとだ・・・
buildCriteriaなんてあるの知らなかった
THANX!!
0016nobodyさん2006/07/05(水) 07:36:58ID:???
例外発生させる時、
sfExceptionのインスタンスにする?
普通のExceptionにする?
あるいは新しく例外クラス作る?
0017nobodyさん2006/07/06(木) 01:34:44ID:???
>>16
そんなもん例外の内容によるでしょ
0018nobodyさん2006/07/06(木) 01:50:29ID:???
>>16
しかも何でその3択しかないの
0019nobodyさん2006/07/06(木) 03:09:44ID:???
>>18
他にどんな択があるの
0020nobodyさん2006/07/06(木) 03:17:06ID:???
winとlinuxで開発してんだけど、propel.iniの設定がわかりません。

linuxではpropel.iniに
propel.output.dir = /home/hogehoge/www/askeet
てな感じに設定しているんですけど、
winと両立する場合はどうするんですか?
0021nobodyさん2006/07/06(木) 03:37:22ID:???
winの俺はこうなってるよ。意味はわからんけど、
多分sandbox解凍したまんまだと思う。
propel-build-schemaとかpropel-build-model等も
これで動いてるぽ。

propel.output.dir = /home/production/symfony-for-release/hogehoge
0022nobodyさん2006/07/06(木) 03:46:16ID:???
propelで作っててパフォーマンス的に難ありで
自前実装にした人っている?
もっさりしたままゴリゴリ作っていってるけど
チューンでどの程度上げられるのか結構不安(´д`)
0023nobodyさん2006/07/06(木) 04:32:07ID:???
>>22
速いo/rマッパなんて無いよ。
selectでのループの中で平気でselectしたりするから、
遅いの当たり雨。
criteriaこねくり回せばなんとかなるけど、それじゃ本末転倒だしね
0024nobodyさん2006/07/06(木) 04:33:33ID:???
>>19
symfonyのexceptionディレクトリくらい見ろよ。
sfExceptionだけですか?
0025nobodyさん2006/07/06(木) 06:56:11ID:???
>>24
こんなにたくさんの例外使い分けるの?
何投げていいのか迷いまくりじゃん
0026nobodyさん2006/07/06(木) 10:02:10ID:???
symfonyのサイトでvery small overheadとか言ってるけど
そんなことないよね(´・ω・`)
0027nobodyさん2006/07/06(木) 18:46:32ID:???
>>25
例外の使い方くらい覚えようね
0028nobodyさん2006/07/06(木) 20:38:12ID:???
>>22
パフォーマンス上げたいならハードコーディングになるけど
自分でデータマッパー書いた方がいいかも
データ構造が複雑じゃないなら結構簡単にできる

0029nobodyさん2006/07/06(木) 20:58:06ID:???
>>28
例えば?
0030nobodyさん2006/07/06(木) 21:13:45ID:???
たとえばっていっても難しいよな・・・
0031nobodyさん2006/07/06(木) 21:46:11ID:???
簡単にできるとか言っておいて…
0032nobodyさん2006/07/06(木) 21:49:26ID:???
>>29
詳細を知りたいならファウラーのPoEAA読むといいよ
テーブル継承とか多対多関連のマッピングとかの解説してる
パフォーマンスに関する遅延ローディングとか一意マッピングとかの実装も詳しく説明してる
でも物凄い単純な例でいいならサンプルコードをここからダウンロードできるよ
ttp://www.phparch.com/shop_product.php?itemid=96
ちなみにchapter16のコードね
0033nobodyさん2006/07/06(木) 22:25:59ID:???
>>32
簡単にできるんでしょ?早く例を見せてよ
0034nobodyさん2006/07/06(木) 22:28:17ID:???
自分じゃ作れないけど、簡単だそうです
0035nobodyさん2006/07/06(木) 22:33:06ID:???
もうSQL直書きでいい(><)
0036nobodyさん2006/07/06(木) 22:35:43ID:???
自前実装にしても、そのうちやりたいこと増えてってどうせpropel必要になってくると思うよ。
2.0でPDOになるんだし、速くなるでしょ。
0037nobodyさん2006/07/06(木) 22:49:37ID:???
2.0って?
今は、stable: 0.6.3ですが?
0038nobodyさん2006/07/06(木) 22:54:17ID:???
>>37
プロペルがでしょ
0039nobodyさん2006/07/06(木) 23:25:00ID:???
>>36
確かに複数の条件検索するときは
Criteriaは便利なんだよなぁ
propelがもうちょっと複雑なリレーションに対応してくれれば
自前実装なんて面倒なことしなくて済むんだけど
あと>>23の言ってるripple loadingの問題とか
これはO/Rマッパー全般に言えることだけど
0040nobodyさん2006/07/07(金) 01:29:58ID:???
winにapache,mysqlいれて開発してみたら、すげーいいわ!
0041nobodyさん2006/07/07(金) 15:21:40ID:???
wikiが出来てた
http://symfony.jp/
0042nobodyさん2006/07/07(金) 17:22:19ID:???
自作クラスからテンプレートに変数渡すとき
sfContext::getInstance()->getRequest()->setAttribute('aaa', 'bbb');
ってすると、受け取るときに
$sf_request->getAttribute('aaa');
になっちゃう。

$aaaで受け取るにはどーすればいいの?
誰か教えてくれろ。
0043nobodyさん2006/07/07(金) 22:17:25ID:???
>>41
すばらしい。
0044nobodyさん2006/07/08(土) 00:43:22ID:???
ちょ、askeetの日本語訳、1日目と2日目だけかよ!
0045nobodyさん2006/07/08(土) 01:15:06ID:???
>>42
Request::Attributeは$_SESSIONのラッパーだから
そこに入れてもテンプレートにはアサインされないよ
0046nobodyさん2006/07/08(土) 01:15:08ID:???
>>44
俺も3日目待ち。待ちきれず英語版に挑戦するかも
0047452006/07/08(土) 01:17:55ID:???
ごめん
セッションのラッパーはUser::Attributeだった
俺はRequest::Attributeは各インスタンスのためのやりとりに使ってるな
0048nobodyさん2006/07/08(土) 02:44:35ID:???
propelのschemaがyamlでかけるようになるみたいね
0049nobodyさん2006/07/08(土) 03:11:22ID:???
どうせbuild-schemaするからいらねええ
0050nobodyさん2006/07/08(土) 07:43:59ID:???
糞Criteriaの組み立てにむかついたのでもう自前DBクラスに移行することに決めました
Criteriaって何だよクラミジアかよ。ロッテリアかよ。
もう知らんけん。俺はもう知らんけんね。
0051nobodyさん2006/07/08(土) 09:00:47ID:???
ちょwww
自前にしたら速度2倍くらいになるじゃん
propelどんだけ遅いんだよ
このドジでのろまな亀が(#゚Д゚) !
0052nobodyさん2006/07/08(土) 09:06:59ID:???
propelひどい言われようだな。

そんなにだめなのか。
0053nobodyさん2006/07/08(土) 09:38:22ID:???
おまいらescapingOutput使ってますか?
これも微妙にコストが気になる機能だ
assignされた変数すべてをインスタンス化してるっぽいし…
何回newしてるんだよみたいなことにならないだろうか
0054nobodyさん2006/07/08(土) 09:48:41ID:???
自前DBクラスでもっさり感が消えたsymfony最高です(´・∀・`)
唯一の欠点がもっさり感だったと今気づきました。
こんなもっさり感が気にならないなんて
フラ公って随分のんびり屋なんですね(*´∀`*)うふふ
0055nobodyさん2006/07/08(土) 11:29:06ID:???
自前のDBクラス公開せれ!
0056nobodyさん2006/07/08(土) 11:43:44ID:???
よくある単なるmysqlコマンドのラッパーだよ
基本SQL直書き用の。
公開するほど立派なものじゃありやせん
0057nobodyさん2006/07/08(土) 13:05:33ID:???
やっぱSQLは直書きだよね〜
0058nobodyさん2006/07/08(土) 13:46:27ID:???
今まで使ってるのが直書きだからねえ。
adodb使えないかな。
複数のテーブルを同一名のフィールドをキーに合体させようとおもったが、
foreign keyは同一名や複数は指定出来ないって言われて、
なんかちょっと萎えた。

そう言う設計を止めりゃ良いんだろうけど、みんなどうしてる?
propelは検索とかlimitとか特殊な実装するときに便利そうだからちょっと惹かれている
adodbでも結局似たようなクラス作ってるから、しっかりした設計で
sql並に自由度があるならそのほうがいい
0059nobodyさん2006/07/08(土) 13:47:15ID:???
結局その結論かよ!
0060nobodyさん2006/07/08(土) 15:42:16ID:???
シンフォニー自体まだまだ完成度低いんだから、アドホックな対応は必要だと思うし、今の段階では悪いことではないと思う。

そういうわけで、
>>54
が正解。
0061nobodyさん2006/07/08(土) 21:55:24ID:???
PDOになれば無問題
0062nobodyさん2006/07/08(土) 22:32:12ID:???
>>60
> シンフォニー自体まだまだ完成度低いんだから、...
agaviとかよりよっぽど高いよ!
0063nobodyさん2006/07/09(日) 01:30:22ID:???
>>56
自前しないでもsfMysqlDatabaseでいいじゃん
0064nobodyさん2006/07/09(日) 01:35:03ID:???
>>60
>>54は使い方が間違ってるか、妄想書きこみだろ。
少なくとも単一クエリでそこまで変わるようなことないし。
0065nobodyさん2006/07/09(日) 01:40:00ID:???
>>63
sfDatabaseがやってるのは
接続とDBを選ぶとこまでだから
クエリ発行したり結果を結果セットクラスに入れて返したりの部分は
自分で書かなきゃいけないでしょ
0066nobodyさん2006/07/09(日) 01:43:51ID:???
>>64
なんで妄想だよw
厳密に測ったわけじゃないが
デバッグモードで速度出てるんだから見ればだいたい分かるお
0067nobodyさん2006/07/09(日) 02:47:22ID:???
>>66
じゃぁ使い方間違ってるんだよ。
こっちは実際ベンチで計ってる。
PDOでネイティブのセレクトでさえ、3倍程度しか変わらん。
0068nobodyさん2006/07/09(日) 02:52:07ID:???
$con=sfContext::getInstance()->getDatabaseConnection();
$con->query('select * from my_table');

0.0033700466156

MyTablePeer::doSelect(new Criteria);

0.0102001289368

これにさらに自前ラッパかませればさらに速度差は縮まるからね。
君のラッパ見せてくれれば、それもあわせて計るよ。
0069nobodyさん2006/07/09(日) 02:56:06ID:???
自前DBクラスなんて作って開発効率下げてるほうが、よっぽどのんびり屋でしょ。
速度はキャッシュでどうとでもなるし
0070nobodyさん2006/07/09(日) 03:25:23ID:???
propelはselectしたものを更にインスタンス化することでもコスト押し上げてるからなぁ。
環境やレコード数によって速度差なんて相当変わってくるでしょ。
実際のところ、symfony製サイトは総じてモッサリしてるし。
モッサリ感が問題にならないサイトならいいけど
エンドユーザーへの密着度が高いようなサイトだと
モッサリと非モッサリの壁は結構でかい。
0071nobodyさん2006/07/09(日) 03:36:09ID:???
>>70
キャッシュって知ってる?
0072nobodyさん2006/07/09(日) 03:38:36ID:???
askeetのサイトってDBのキャッシュしてないの?
0073nobodyさん2006/07/09(日) 03:39:31ID:???
>>70
>実際のところ、symfony製サイトは総じてモッサリしてるし。
そもそもsymfonyのサーバスペックも回線も、しかも中身がどうかかれてる
かも知らずに、なんでその結論になるの?
それともsymfonyサイトのコードしってるの?
0074nobodyさん2006/07/09(日) 03:45:33ID:???
>>72
http://www.symfony-project.com/askeet/19
本家サイトくらい読もうよ
0075nobodyさん2006/07/09(日) 03:46:33ID:???
>>71
使えるキャッシュは使うけど毎回使えるわけじゃない
というか別にケースバイケースで好きに書けばいいわけで…
なんでやたら突っかかってこられるのかサッパリわからんちん
0076nobodyさん2006/07/09(日) 03:47:08ID:???
>>70
>実際のところ、symfony製サイトは総じてモッサリしてるし。
だったらpropel関係ないじゃん。
propelアクセスしてないサイトももっさりしてるんでしょ?
0077nobodyさん2006/07/09(日) 03:53:59ID:???
>>76
屁理屈かよw
0078nobodyさん2006/07/09(日) 03:55:07ID:???
symfonyのサイトはISDNだよ
0079nobodyさん2006/07/09(日) 03:55:21ID:???
>>77
>屁理屈かよw
どこが屁理屈なの?
煽ってないでまともに答えてね
0080nobodyさん2006/07/09(日) 03:57:08ID:???
フレームワーク使う人=遅くても動けばいいと思ってる糞技術者
ってことでFA?
0081nobodyさん2006/07/09(日) 03:58:30ID:???
>>80
あなたがフレームワーク覚えられなくて、屁理屈こねてる糞技術者でFAです
0082nobodyさん2006/07/09(日) 03:58:42ID:???
>>79
そうじて 【総じて】
(副)
(1)全体に。一般に。だいたい。
0083nobodyさん2006/07/09(日) 04:00:26ID:???
>>82
総じての意味知ってるなら、
その中にDBアクセスすらしてないサイトだって含まれてることくらい分かるよね?
0084nobodyさん2006/07/09(日) 04:01:58ID:???
重いサイトは全てpropelで、一部軽いサイトは違うって言いたいんだろ。
0085nobodyさん2006/07/09(日) 04:05:50ID:???
フレームワーク使いなんて単なる横着者ですよ
偉い人はそれがわかっとらんのです
0086nobodyさん2006/07/09(日) 04:09:59ID:???
>>85
チーム開発したとこありますか?
0087nobodyさん2006/07/09(日) 04:23:51ID:???
>>86
本当に力のある技術者なら全部自分で書くはずだから
フレームワーク使うチームなんて雑兵の群れですねw
0088nobodyさん2006/07/09(日) 04:52:52ID:???
>>87
チーム開発はしたことないんですか?
ずっとひとりなんですか?
0089nobodyさん2006/07/09(日) 04:55:17ID:???
>>87
>本当に力のある技術者なら全部自分で書くはずだから
それは力のある技術者と言わず、時間が無限にあるニートと言うんだよ
既にあるものをわざわざ自分で書く人は、力のある技術者とは言わないよ^^
0090nobodyさん2006/07/09(日) 05:03:21ID:???
フレームワークなんて
誰にでもあうようにカスタマイズされて
結局誰にもあわない
スキー場で借りるレンタルスキー板みたいなもんですよね。
妥協の産物w
0091nobodyさん2006/07/09(日) 05:04:29ID:???
>>90
で、チームで開発したことあるんですか?
0092nobodyさん2006/07/09(日) 05:07:00ID:???
>>90
>結局誰にもあわない
×
>>90にはわからない
0093nobodyさん2006/07/09(日) 06:06:41ID:???
YahooやGoogleがフレームワークで作られていますか?
つまりそういうことです^ ^
0094nobodyさん2006/07/09(日) 07:57:10ID:???
93がどっちの意見か分からない
0095nobodyさん2006/07/09(日) 08:21:17ID:???
symfonyでYahooやGoogleが作れますか?
たとえが大きすぎるならmixiや2chと言い換えてもいいでしょう。
答えは否。
そういうことです。どうもありがとうございました。
0096nobodyさん2006/07/09(日) 08:43:13ID:???
mixiや2ch程度ならば作れるんじゃない?

symfony拡張性高いし。
0097nobodyさん2006/07/09(日) 09:48:54ID:???
windowsのdos窓?コマンドプロンプトって最悪だな。

bashみたいなシェル使えんかな?
0098nobodyさん2006/07/09(日) 09:56:27ID:???
フレームワーク使いたいんだけどさぁ
遅いから駄目って言われるんだよね・・・。

それほど遅くないと証明したいのだが、
実際ベンチとか取ってるサイトあったら教えてください。
それとも本当に気になるほど遅い?
0099nobodyさん2006/07/09(日) 10:04:27ID:???
>>97
cygwin
0100nobodyさん2006/07/09(日) 10:05:44ID:JR/fuUge
使いたければ使えばいい。
使いたくなければ使わなければいい。

選択肢が広がるので、フレームワークの使い方は理解しておきたい。
0101nobodyさん2006/07/09(日) 10:10:25ID:???
>>98
http://www.symfony-project.com/trac/wiki/ApplicationsDevelopedWithSymfony

ここで実際に見て確かめてみれ
■ このスレッドは過去ログ倉庫に格納されています