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

Zend Framework Part4

レス数が900を超えています。1000を超えると表示できなくなるよ。
0001nobodyさん2010/02/09(火) 22:21:24ID:???
公式
http://framework.zend.com/

マニュアル
http://framework.zend.com/manual/ja/

翻訳状況
http://mikaelkael.dyndns.org/checker/language/details/lang/ja
http://framework.zend.com/wiki/display/ZFDEV/Japanese+(Nihongo)

バグ報告
http://framework.zend.com/issues/secure/Dashboard.jspa

API
http://framework.zend.com/apidoc/core/

前のスレッド Zend Framework Part3
http://pc11.2ch.net/test/read.cgi/php/1239320100/
0813nobodyさん2011/01/18(火) 00:42:18ID:???
>>812
いや、そういうわけではなく、使いにくそうな気がして、実運用上で使用されているのかな?よ思いまして
確かにif文やforeachから動的に入れ込み、色々と楽に出来るのは分かるのですが、SQLとしてはどうなのかなと
ま、商品管理からするとblogシステムとかではさほど難しいSQLもないので大丈夫かもしれませんが
0814nobodyさん2011/01/18(火) 00:45:13ID:???
僕はZend_Db(PDO)使ってます。
理由はSQL書くの好きだからです。
0815nobodyさん2011/01/18(火) 13:22:00ID:???
おれもZend_Db_Table使ってない
quickstartのGuestbookMapper見て使いづらそうだったんで。ちょっとかっこいいとは思うんだけどw

Zend_Dbを素で使うときはprepareじゃなくてqueryだったような。
条件によってSQLを変えたいときはZend_Db_Selectが便利ですよん
0816nobodyさん2011/01/18(火) 17:53:24ID:???
Zend_Db_Tableの最大の欠点はLIKE使いたいとき。
ゲロコードになる
0817 [―{}@{}@{}-] nobodyさん2011/01/19(水) 08:49:05ID:???
リファレンスとかカスケード使えないDBなんで出来るだけZend_Db_Tableに任せてる
が、複雑なセレクト、サマリ更新、式やサブクエリ含むアップデートは結局手でゴリゴリ書かないとむずかしい
queryとTable系でトランザクション違うのか混ぜるな危険を感じた事があった


今時リファレンスが無い()笑とか言われるかも知れないけど多分最新の安定バージョンなんだorz
0818nobodyさん2011/01/19(水) 09:21:24ID:???
住人の結論:Zend_Db_Tableは実運用では使えない

自分はSQLの書き方が分かりにくくなるので使っていません
後、純粋なSQL文に慣れているので

逆に、Zend_Db_Tableを運用上で使っている人に意見を聞いてみたいなぁ
自分には知らない便利な活用法なんかあるかもしれないからね
0819nobodyさん2011/01/19(水) 13:34:46ID:???
俺は複雑な検索や最適化が必要な箇所はSQLクエリ書いてる。
1つのテーブルに対する単純なCRUDにはZend_Db_Table使ってる。
select()等のメソッドチェーンは使っていないが便利だよ。

// テーブル定義のキャッシュ使う
Zend_Db_Table::setDefaultMetadataCache($zendCache);

// テーブルのO/Rマッパ作成
$table = new Zend_Db_Table(array(xxxxxx));

$row = $table->find($id)->current(); // キーで検索
$row = $table->createRow(); // 新規行の作成

// 行を更新して保存
$row->fieldName = "fieldValue";
$row->save();

// 行を削除
$row->delete();

こんな感じに書ける。
Zend_Db_Tableインスタンスを取得するショートカットメソッド定義しておけば、

$row = getUserTable()->find($userId)->current();
$row->fieldName = "xxxxxx";
$row->save();

と数行で書ける。

>>817
>queryとTable系でトランザクション違うのか混ぜるな危険を感じた事があった
トランザクションはDb_Adapter単位なので、意識してれば混在しても問題無いよ。
0820nobodyさん2011/01/19(水) 14:32:35ID:???
うはそうだったのか、使えるじゃんZend_Db_Table
せっかちな人はモデルからfetch結果(Zend_Db_Table_Rowset)を返してそのままviewに突っ込めばいいのか。

quickstartのこの実装はいったい何だったんだw 生真面目?
DB → Application_Model_DbTable_Guestbook → Application_Model_GuestbookMapper → Application_Model_Guestbook → view
0821nobodyさん2011/01/20(木) 02:54:37ID:???
>>820
複雑なSQLの入ったコードをDBTABLEに書くのが気持ち悪いから
生真面目実装してます
0822nobodyさん2011/01/21(金) 13:54:46ID:???
いやいや生真面目なのはそこじゃなくて。
Zend_Db_Tableを利用してるのにもかかわらず、さらに自前でMapper書いてるというとこでしょ。
0823nobodyさん2011/01/21(金) 14:41:21ID:???
>>822
DB ←Application_Model_Guestbook(Zend_Db_Tableを継承、もしくは内包) ← Controller

くらいが妥当だよな。
0824nobodyさん2011/01/21(金) 15:02:52ID:???
だよねえ
Skinny Controller Fat Model を表現したかったんだろうけどプロジェクトが小さすぎて
かえって違和感がでてしまったんじゃなかろうか。
0825nobodyさん2011/01/21(金) 17:36:26ID:???
そもそもさ、ZFの機能って皆色々と使ってる?
自分はフロントコントローラ、DB、その他って位しか主に使ってないんだけど・・・
例えばValidateなんかも何かめんどくさくて、自分で実装した方がいいような気がしたり
0826nobodyさん2011/01/21(金) 17:53:03ID:???
一人で開発するならそれでいいと思うけど
0827nobodyさん2011/01/22(土) 00:10:22ID:???
Controller、Session、Db、Cache、Http、あたりは重宝してる。
WEBサービス系のクラスもいざって時に役に立つ。

0828nobodyさん2011/01/22(土) 00:32:46ID:???
Zendは、Zend_Http_Clientをライブラリとして使ってるぐらいなんだけど、
アレはほんと便利。

Zend_Db_Tableが複雑なSQLを書くとき〜云々の件は、普通にView書いたりすれば
記述する方もある程度すっきりしたりするのではないの?
0829nobodyさん2011/01/22(土) 18:46:55ID:???
アクションコントローラー以外からPOST値を取得したいのですが、どのようにすればいいでしょうか?


0830nobodyさん2011/01/22(土) 18:48:09ID:???
$_POST
0831nobodyさん2011/01/22(土) 23:11:07ID:???
>>830
返事遅くなってすみません。
スーパーグローバルは使わない方向でいたきたいです。

0832nobodyさん2011/01/22(土) 23:12:35ID:???
アクションコントローラーだってスーパーグローバル変数を参照してると思いますが
0833nobodyさん2011/01/22(土) 23:28:16ID:???
>>832
すみません。
背景を説明します。

Zend_Formの派生クラスを作ってまして、その派生クラスをアクションクラスの中で使っています。
アクションクラス内では$this->getRequest()->getParams()で取得できますが、Zend_Formの派生クラスの内部でgetRequest()する方法はないでしょうか?
0834nobodyさん2011/01/22(土) 23:49:19ID:???
コントローラから渡すのじゃなんでだめなの?
0835nobodyさん2011/01/22(土) 23:53:51ID:???
>>834
$form =new MyZend_Form( $this->getRequest());
として、MyZend_Formのコンストラクタに渡すとエラーがでます。
0836nobodyさん2011/01/23(日) 00:02:50ID:???
エラーの原因つぶせば?
0837nobodyさん2011/01/23(日) 04:08:35ID:???
>>833
Zend_Controller_Front::getInstance()->getRequest()
じゃだめなの?
0838nobodyさん2011/01/23(日) 11:24:33ID:???
この質問者のグダグダした感じ、いつもの奴だろ
あだ名付けようぜ、今日からお前「グダ質」な
0839nobodyさん2011/01/23(日) 13:31:54ID:???
>>837
ありがとうございます。
0840 ◆8DApXCw..I 2011/01/23(日) 13:40:11ID:???
>>838
お前相当仕事でストレスたまってんだろ
はっきり言って見苦しいぞ
スレにケチつける暇あったらコード書け


0841nobodyさん2011/01/23(日) 13:42:14ID:???
Zend_Formの中でリクエスト取得とかありえねぇw
0842nobodyさん2011/01/23(日) 15:24:06ID:???
>>829
$request = Zend_Controller_Front::getInstance()->getRequest(); でもいいし、
$request = new Zend_Controller_Request_Http(); でもいいし、
$request = Zend_Registry::get("REQUEST"); でもいいし、

$request = $_POST; でもよい。


0843nobodyさん2011/01/23(日) 18:41:07ID:???
皆さんデバッグをどうやってますか?
ZFでエラーが起きた行を表示してくれる機能などあるのでしょうか?
0844nobodyさん2011/01/23(日) 18:54:57ID:???
デバッガー使え
08458432011/01/23(日) 18:57:36ID:???
デバッガを使ってはいますが、エラー行(冷害が発生した行など)の特定までは
自動で行ってくれないかなと思って質問しました
0846nobodyさん2011/01/23(日) 18:59:06ID:???
普通してくれるだろw
0847nobodyさん2011/01/24(月) 02:13:32ID:???
ZFというより、PHP側の設定の問題だなw
開発環境にxdebug入れてるが、自動でエラートレースしてくれて便利だよ。

それが無理なら、
エラーと例外のハンドラ作って、var_dump(debug_backtrace()) とでも書いとけ。
08487592011/01/24(月) 19:25:07ID:???
すみません。

その後の報告ですが、
やっと原因がわかりました。

Hogeクラスの親クラスのプロパティの初期値に
nullと設定すべきところを
nulとしていたのが原因でした。

お騒がせいたしました。
0849nobodyさん2011/01/24(月) 21:15:03ID:mS3EM73v
Zend_Applicationを使うとエラーが表示できなくなる。

class IndexController extends Zend_Controller_Action{
public function indexAction(){
a
}
}
ってするとパースエラーが表示されますが、

class IndexController extends Zend_Controller_Action{
public function indexAction(){
$this->hoge();
}
}
ってするとエラーハンドラにキャッチされてerror.phtmlが表示されてしまいます。

エラーハンドラを無効化しようとBootstrap::_initView()に
$front=Zend_Controller_Front::getInstance();
$front->setParam('noErrorHandler', true);
と書くと、

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><META content="IE=5.0000" http-equiv="X-UA-Compatible">
<META content="text/html; charset=utf-8" http-equiv=Content-Type></HEAD>
<BODY></BODY></HTML>

という書いたことのない謎のソースが表示されてしまいます。

ふつーにUncaught Exceptionって表示させたいだけなんですがどうすればいいのでしょうか。
0850nobodyさん2011/01/25(火) 02:21:16ID:???
>>849
Bootstrap::_initView() に

$front->throwExceptions(true);
または
$front->setResponse(new Zend_Controller_Response_Http())
->getResponse()->renderExceptions(true);


ソースは以下
Zend_Controller_Front::dispatch()
} catch (Exception $e) {
if ($this->throwExceptions()) {
throw $e;
}
$this->_response->setException($e);
}

Zend_Controller_Response_Abstract::sendResponse()
if ($this->isException() && $this->renderExceptions()) {
0851nobodyさん2011/01/25(火) 02:50:09ID:???
Zend_Applicationの存在しないバージョンから使ってる俺に、
Zend_Applicationを導入する優位性を教えてくれないか?

煽りとかでは無く、
アプリケーションの起動処理って、分岐の無いロジックかつ、アプリケーション固有処理が入る事が多いので汎用クラス(Zend_Application)を使うメリットが感じられないんだ。
0852nobodyさん2011/01/25(火) 10:44:20ID:???
まあざっくり言うとコードを書かずに、大方必要なインスタンスを揃えてリクエストをディスパッチ
してくれる。やってることはZend_Applicationを使わない場合でもそう変りないはずだよん。
むしろ一番フレームワークらしい気がする。
0853nobodyさん2011/01/25(火) 11:05:16ID:???
あれ上のちょっと日本語おかしいな。まあいいか
自分でカスタマイズするときは、application.iniでパラメーター変更したり、クラス名変更したり、
Bootstrapで自分でnewするんだす。
0854nobodyさん2011/01/25(火) 12:15:31ID:???
>>852-853
ありがとう!
やっぱ基本的な初期化処理とかを行うクラスみたいだね。

元々BootstrapもApplicationも無いバージョンから使ってて、
独自クラスで実装してたんだけど、乗り換えてもあまり大差なさそうだ・・・
暇を見つけて乗り換え検証してみるよ。
0855nobodyさん2011/01/25(火) 21:14:33ID:Mp2xKR4s
>>850
できた!さんくす

…Zend_Applicationは巨大すぎて把握しきれんわ
あとvar_dumpしたら至る所に*RECURSION*って出てくるんだが大丈夫なんだろうか?
0856nobodyさん2011/01/25(火) 21:22:58ID:???
へ?何が?
0857nobodyさん2011/01/25(火) 23:20:26ID:???
>>855
大丈夫。
リファレンス値が入っていると無限階層になっちゃうから、
そういう変数はRECRUSIONと表示される。
0858nobodyさん2011/01/29(土) 00:59:18ID:gRK6VmbL
BootstrapでZend_View::baseUrlが拾えない。

Zend_Application使ってるとき、
・ビュー内で$this->baseUrl()するとindex.phpまでのパスが取得できる
・コントローラ内で$this->view->baseUrl()するとindex.phpまでのパスが取得できる

でも、

・ブートストラップ内で
$view = new Zend_View();
$view->baseUrl();
ってやってもNULLになります。

アプリ全体で使うものについて
protected function _initView(){
$view = new Zend_View();
$view->headScript()->appendFile($view->baseUrl() . 'js/jquery.js');
}
とかやりたかったんですが普通はどこらへんでやるものなんですかね?
0859nobodyさん2011/01/29(土) 01:12:08ID:???
>>849と同一人物?
0860nobodyさん2011/01/29(土) 01:55:56ID:gRK6VmbL
よくわかったな!なぜバレた!
0861nobodyさん2011/01/29(土) 01:58:15ID:???
偉そうな口調が似てた
0862nobodyさん2011/01/29(土) 03:40:53ID:???
>>858
$request = new Zend_Controller_Request_Http();
$baseUrl = $request->getBaseUrl();

0863nobodyさん2011/01/29(土) 06:44:22ID:???
アンケートフォームみたいな、テキスト入力欄とかチェックボックスとかの数が多くて、
デザインも複雑な場合(チェックボックスの最初の1個だけラベルが二つとか)、
Zend_Form_Elementを使ってフォームの要素を出力しようとすると、フォームの要素の部分がすげーめんどくさいんだが、
なんとか楽にやる方法ないかな?
0864nobodyさん2011/01/29(土) 11:49:18ID:???
コード自体をスクリプトで書く
0865nobodyさん2011/01/29(土) 23:04:56ID:???
Zend_Dateで和暦を扱うことはできませんか?

Locale/Data/ja.xml に和暦のデータ(calendar[@type="japanese"])
が入っていたので扱えるのかと思ったんですが、
Zend_DateのtoString('GGG')などとしたときのコードを追っていくと
使うデータが calendar[@type="gregorian"] 決め打ちみたいで
「紀元前」と「西暦」しか出てきません。

Zend_Dateを継承して自分で日本のものを作らないとだめでしょうか?
0866nobodyさん2011/01/30(日) 03:02:00ID:???
和暦っつても色々あるらなぁ・・・自分で変換するのが手っ取り早いかと。
0867nobodyさん2011/01/30(日) 11:13:05ID:Mz9WohIA
Zend_Controller
Zend_View
これ以外で覚えたらいいの教えてください
0868nobodyさん2011/01/30(日) 13:07:07ID:???
>>867
覚えたらいいのってのも漠然だけど

Zend_Layout
大抵使う

Zend_Date
Zend_Log
Zend_Cache
Zend_Mail
Zend_Session
この辺は手軽に使えるから試すのも楽
腐れ実装もあるけど

Zend_Application
Zend_Config
Zend_Db
Zend_Form
フレームワークとして使い込む度合いで
この辺りも

他は需要と実装に応じて
0869nobodyさん2011/01/30(日) 13:13:17ID:???
Zend_Validateも必須じゃないか?
0870nobodyさん2011/01/30(日) 13:15:42ID:???
Zend_Validateはメッセージがクソだったから
自前のクラス使ったままだったわ
でも、確かにZend_Formやら使う時は必須ね
0871nobodyさん2011/01/30(日) 13:46:43ID:???
WEBサイトをZFで全部作ってきたのですがある社員にそれはやめろと言われました
cakephp|CIと,ZFを使い分けるべきって
どういうケースにcakephp|CIを利用してどういうケースにZFを使うんですか?
0872nobodyさん2011/01/30(日) 14:58:23ID:???
>>871
なんでそれを言った本人に聞かないの?
0873nobodyさん2011/01/30(日) 15:27:59ID:???
2ちゃんで聞いてみ?俺が言いたい事を誰かが書いてくれるからって言われたもので
0874nobodyさん2011/01/30(日) 16:14:36ID:???
>>871
小学生のおまんこなめたい
0875nobodyさん2011/01/30(日) 17:32:26ID:???
>>866
ありがとうございます。自分で変換します。
0876nobodyさん2011/01/30(日) 18:15:38ID:7lsYYH4G
>>873

逆にその先輩だか同僚だかに使い分けの理由を聞いて結果をここに晒してくれ。
0877nobodyさん2011/01/31(月) 03:06:51ID:???
>>873
アホじゃねえのその先輩という名の情弱は
死んどけって言っといて
0878nobodyさん2011/01/31(月) 06:55:28ID:???
>>871
複合主キーをもつDBのシステムを作るときはZF、単一の主キーだけで構成
されるDBを扱う場合はCakePHP、とか言いそうだなそいつ。

どちらかに統一したほうが、スキル習得コストの面でも作成するコードの品質面
でも将来のメンテナンスの面でも、いいよ。
似たようなスキルを分散するのは、良くない。

てか、その先輩はそんな事は承知の上で言っているんだろうから、単に両方使
えますと威張りたいだけ。
そんな人の言葉を真に受ける必要はないと思うよ。
0879nobodyさん2011/01/31(月) 09:15:17ID:???
>>上
上でZend_Formの事書かれてるけど、皆アレ使ってるんだ・・・
俺はマニュアル見て「何だコレ、めんどくせぇ」と、逆にぐちゃぐちゃになりそうだったから止めたんだけど
単純なフォームを作成するだけでもかなり長いコードになりそうな気がしてるんだけど結構使い勝手いいものなの?
もしそうだったら学習しなおそうかな
0880nobodyさん2011/01/31(月) 09:55:25ID:???
上に挙がってるZend_FormとZend_Validateは使ってない。あとZend_Authも使ってない。
0881nobodyさん2011/01/31(月) 12:59:08ID:???
プロジェクトで組む相手によるでしょ。
普段はsymfony使いだけどzendでやるところに呼ばれたらzendもできるし、cakeでやる人に呼ばれたらcakeでやる。
俺俺のところに呼ばれたらその俺俺を学習して使ってみせるよ。
0882nobodyさん2011/01/31(月) 13:19:04ID:???
企業サイト6ページ作る場合は何で作るのが妥当?

トップページ
お問い合わせ
会社紹介
求人
製品紹介
各製品のページ(5ページ程度。デザインは使いまわし)
0883nobodyさん2011/01/31(月) 13:24:47ID:???
既成CMS使えよ
0884nobodyさん2011/01/31(月) 15:27:51ID:???
ほんと
既製のもので適わないなにかあるなともかく
0885nobodyさん2011/01/31(月) 17:04:48ID:???
>>879
俺も使ってないよ。layoutもformもvalidateも使ってない
あまりに使いにくいし見苦しいから
0886nobodyさん2011/01/31(月) 19:09:35ID:???
Zend_FormのMultiCheckboxってチェックのとこクリックしたときの挙動おかしいよね。
Firefoxだと一番下にチェックつけると一番上にもチェックがつく。
IEとChromeだと一番下にチェックつけると一番上が一瞬選択状態になる。
あとチェックを解除するためにチェック済みの項目をクリックするとチェックがはずれないことがある。

フォームはViewに手書きしてValidateを手動で使うのが良さそう。

Zend_Formは概要を理解するまでがはてしなくめんどくさい。
理解しても細かいとこを覚えきれないから結局これどうやんだっけって調べるはめになる。
ちょっと機能詰め込みすぎて逆に使いにくい。
うまいこと分割していけば使いやすい物になると思う。
0887nobodyさん2011/01/31(月) 22:00:47ID:???
そもそもViewに属するであろうFormが複雑なロジックを含みすぎてるんだよな。
所詮HTMLを出力するだけなのに、学習コストが高すぎる。

Validateは基本英語ってのが微妙だし、
自分で一度作ってしまえば延々使い回せるものなので使いやすいクラスを自作している。
(Zend_Validateを扱えるAdaptorも一応用意してある)

逆に一度覚ると楽で手放せないのは、
Zend_Session、Zend_Cache、Zend_Dbくらいかなぁ・・・
Zend_Log、Zend_Mailは俺俺クラスで一枚ラップしてやらないと微妙に使いにくい気がする。
0888nobodyさん2011/01/31(月) 22:10:12ID:???
メッセージくらい自分でカスタマイズしろよ。
自力開発能力ほんとないのな
0889nobodyさん2011/01/31(月) 22:44:21ID:???
Zend_Validate便利だと思うんだがなぁ。
日本語だってBootstrap.phpで対応可能で、
カスタマイズするのも元があるから簡単よ。

public function _initValidate()
{
$lang = 'en';
$locale = new Zend_Locale();
if ($locale->getLanguage() === 'ja')
{
$lang = 'ja';
}

$translater = new Zend_Translate(
array(
'adapter' => 'array',
'content' => APPLICATION_PATH . '/../resource/languages',
'lang' => $lang,
'scan' => Zend_Translate::LOCALE_DIRECTORY
));

Zend_Validate_Abstract::setDefaultTranslater($translater);
}
0890nobodyさん2011/01/31(月) 23:12:25ID:???
>>885
じゃぁ何使ってるの?
後はDBとView位?


まぁ確かにメッセージくらいは楽に変更できるけどね
0891nobodyさん2011/01/31(月) 23:15:07ID:???
>>883
CMSって使ってる?
俺使ったことないんだけど
どんなの使ってるの?
xoopsとか?

というかさ、CMS使ったら別に俺たち要らなくなるような気がするんだよな
0892nobodyさん2011/01/31(月) 23:16:29ID:???
Zend_Validateって単体項目に対するチェックがメインで、
複数項目チェインさせたり、条件分岐させる場合に使いにくいと感じたなぁ。
コードをZFで統一する美しさには惹かれるけど、
いちいち調べてカスタマイズして・・・ってやる程のモノでも無いと感じたから、自分で書いちゃった。

>>888
車輪の再発明したのに、自己開発能力無いと言われるとは思わなかったわw

>>889
ありがとう。試してみるよ!
0893nobodyさん2011/01/31(月) 23:18:49ID:???
車輪の再発明ってだめな例だぞ
0894nobodyさん2011/01/31(月) 23:24:18ID:???
>>893
大抵のプログラムは再発明を得てブラッシュアップされていくものだ。

多分、今君が書いてるプログラムも、世の中探せば既存コードがある。
探す手間をかけるか、自分で書いて理解を深めるか、好きにすればいい。
0895nobodyさん2011/01/31(月) 23:25:19ID:???
Hello worldが書けないプログラマは大規模なサイトなんて作れんのです
0896nobodyさん2011/01/31(月) 23:54:50ID:???
>>862
ありがとう!できた!
一体どうやって調べるんだこういうの!

ただそのままリクエスト引き回そうとしたら
$request->getParams()がNULLだった。
Smartyでいう$smarty.request的なものってViewにありませんか?
Viewでvar_dump($this)ってしたかぎりではそれっぽいものは見あたりませんでした。

とりあえずコントローラのinitで
$this->view->request = $this->getRequest()->getParams()って
やったんだが、もっと汎用的な方法ってあるよね?
0897nobodyさん2011/02/01(火) 01:31:02ID:???
>>896
Zend_View(_Abstract)自体には、Requestを保持する機構は無いみたいなのでそれでOKかと。
もしくはgetRequestを実装した、Zend_View継承クラスを使うとかかね。

__get / __set マジックメソッド使ってるからvar_dumpでは解読出来ないよね・・・
IDEとか使ってソースコード追うのが一番早いよ。
0898nobodyさん2011/02/01(火) 01:34:01ID:???
>>896
$router = new Zend_Controller_Router_Rewrite();
$request = $router->route(new Zend_Controller_Request_Http());
var_dump($request->getParams());

っていう意味?
つーか、ここまでやっちゃうともうZend_Controller_Front::dispatch()丸パクリだから
本当にそこでする必要があるのか悩んでみてもいいかも。

調べるのはZend Frameworkのソースをgrepで検索してる。
0899nobodyさん2011/02/01(火) 10:04:22ID:???
アレを使ってるだの使ってないだのと
色々と議論されていますが、
皆さんどれくらいの規模のシステムを開発されてますか?

フレームワークの選定権とかもたれているのですか?
0900nobodyさん2011/02/01(火) 10:37:13ID:???
Zend_Validateは結構便利だと思ってたけど、少数派なのかな。
Zend_Validateの派生クラスを生成するクラスを作っておけば、使い回しもできて便利だと思うのだけど。
0901nobodyさん2011/02/01(火) 11:22:37ID:???
Zend_Validateだけとかならいいけど、FilterとかFormとかFileなどと連携になると非常に知識を覚えるのがめんどくさい
特にForm
Layout、MVCとかと一緒にすると自分には逆に混乱してしまう
0902nobodyさん2011/02/01(火) 13:13:40ID:???
>>890
dbとviewとaclとconfigとsessionとcacheかなー
0903nobodyさん2011/02/01(火) 14:25:39ID:???
index.phpの雛形で修正したほうがいい、こっちのほうがいいってのありませんか?
<?php

// Define path to application directory
defined('APPLICATION_PATH')
|| define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/../application'));

// Define application environment
defined('APPLICATION_ENV')
|| define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));

// Ensure library/ is on include_path
set_include_path(implode(PATH_SEPARATOR, array(
realpath(APPLICATION_PATH . '/../library'),
get_include_path(),
)));

/** Zend_Application */
require_once 'Zend/Application.php';

// Create application, bootstrap, and run
$application = new Zend_Application(
APPLICATION_ENV,
APPLICATION_PATH . '/configs/application.ini'
);
$application->bootstrap()
->run();
0904nobodyさん2011/02/01(火) 16:11:09ID:???
Zend_ApplicationとかBootstrapって、
大した事してないのにコード追うのが面倒になるので使ってねーや。
(というかちょっと前のバージョンには存在して無かった)

疎結合で好きな機能だけ使えるのもウリなのに、
最近は兎に角あるものは極力ZFを使うべきって流れになってて嫌だなぁ
0905nobodyさん2011/02/01(火) 16:24:08ID:???
>>903
そこから変えるとしたら自分の場合はZend_Configはiniじゃなくてphpの方使うくらい
0906nobodyさん2011/02/01(火) 16:29:11ID:???
↓でもControllerとViewになっててデザインとロジックが分かれてるのに何でフレームワークなんて使いたがるの?


setting.php
$a="ヘッダ";
$b="メイン文章";
$c="フッタ";

index.php
<?php
include "setting.php";

echo <<<HTML
<div id="header">$a</div>
<div id="main">$b</div>
<div id="footer">$c</div>
0907nobodyさん2011/02/01(火) 17:23:30ID:???
>>906
デザインとロジックを分けるためだけにFWを導入するわけでは無い。

それ以前に君の例だと、
ViewからController(?)であるsetting.phpを呼び出している時点でMVCのなんたるかすら理解していないと思われる。
基礎からお勉強してきなさい。
0908nobodyさん2011/02/01(火) 18:31:42ID:???
じゃあこうすりゃいいんだろ?
setting.php
$a="ヘッダ";
$b="メイン文章";
$c="フッタ";
include "index.php";


index.php
<?php
echo <<<HTML
<div id="header">$a</div>
<div id="main">$b</div>
<div id="footer">$c</div>
0909nobodyさん2011/02/01(火) 18:33:32ID:???
>>908
恥ずかしいから他所行った方がいいとおもうなぁ…
0910nobodyさん2011/02/01(火) 18:56:17ID:???
無知の知って言葉すら知らない餓鬼なんだろうよw
自分がついていけないから、必死でフレームワークの存在を否定したいんだよ。

クラス設計とか全く出来なそうな臭いがするな。
0911nobodyさん2011/02/01(火) 19:01:27ID:???
ヒアドキュメントで変数置換してたら、jQueryとか使う時面倒そうだなw
まぁ、それ以前の問題だけどドヤ顔で>>908を出しちゃうあたり微笑ましい。

専門学校生以下。間違っても職場にいたら足を引っ張るタイプ。
0912nobodyさん2011/02/01(火) 19:09:19ID:???
http://framework.zend.com/manual/ja/project-structure.project.htmlのサイトにあるような構造にする時
jsonファイルやxmlファイルやcsvファイルはどこにドキュメントルートの外に置く場合は置いたらいいですか?
レス数が900を超えています。1000を超えると表示できなくなるよ。