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

Zend Framework Part4

■ このスレッドは過去ログ倉庫に格納されています
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/
0391nobodyさん2010/06/30(水) 14:54:36ID:???
え?
0392nobodyさん2010/06/30(水) 15:32:22ID:???
>>390
勘違い乙。 返しw
0393nobodyさん2010/06/30(水) 15:52:01ID:???
個人的な使い心地で言えば、
手軽さと利便性はPHP、言語仕様としてはRubyを評価するかな。


PHPの気持ち悪い点

・namespaceの区切りがバックスラッシュ
・無理矢理っぽい無名関数
・try catchにfinalyが無い
・goto文
・引数の型チェックが中途半端(stringとか指定出来ない)
0394nobodyさん2010/06/30(水) 17:07:27ID:???
Pythonには勝てん。
0395nobodyさん2010/06/30(水) 17:22:46ID:???
気持ち悪さで言うと一番気持ち悪いのはRubyだろ。
0396nobodyさん2010/06/30(水) 17:44:40ID:???
Perlの事も(ry
0397nobodyさん2010/06/30(水) 17:58:24ID:???
RubyはDelphiっぽいだけで気持ち悪くはない
気持ち悪いけど
0398nobodyさん2010/06/30(水) 20:17:05ID:???
Javaは気持ち悪さはないけど面倒くさい

ていうかここZFスレね
0399sage2010/07/03(土) 00:16:16ID:???
1回だけPHP全般的なコト書いちゃうけれど

try catch の finaly は確かに欲しいね。
Ruby の入門書を見て便利だなと思ったのは、各文字列オブジェクトごとに文字エンコードをプロパティーとして指定できるところ。
0400nobodyさん2010/07/03(土) 05:10:13ID:???
>>393
>>399

同じtypo
0401nobodyさん2010/07/04(日) 16:17:02ID:???
PHPのtry catchってpythonみたいに既存のどんなerrorでも捕まえられるわけじゃないのね
0402nobodyさん2010/07/04(日) 20:37:45ID:???
errorを捕まえるためのものじゃないからね
0403nobodyさん2010/07/04(日) 20:38:37ID:???
てか、ZFと関係ないしw
PHPの初心者スレか、自分のブログに書いたらいいよ
0404nobodyさん2010/07/04(日) 22:41:57ID:???
ZF使って1つのサーバーでそれぞれ独立したサイトを
2つ以上立てようとするとキモくなる、なんで?
0405nobodyさん2010/07/04(日) 23:15:04ID:???
ZFは君を映す鏡
0406nobodyさん2010/07/04(日) 23:47:14ID:???
俺がZFで作ったサイトになら抱かれてもいいと思えるのはそういう事だったか
0407nobodyさん2010/07/05(月) 09:38:39ID:???
>>404

うちはVirtualHost別にmodule振り分けるRouter自作してやってるよ。
いい感じに疎結合になるし、管理も楽。
0408nobodyさん2010/07/05(月) 10:20:06ID:???
host名で振り分けるルートはもともとあるけど、Routerを自作する理由はなに?
0409nobodyさん2010/07/05(月) 13:01:04ID:???
>>408
Zend_Controller_Router_Route_Hostnameだと、

:hoge.fuga.com

とかやると:hogeが省略出来ないとか、
あと他にも理由あったような気がするけど
正規表現でHostnameマッチできるRouter自作した。
0410nobodyさん2010/07/05(月) 13:03:27ID:???
あ、あとmuduleにRouteされたときだけ
module用のPluginが登録されるようにした。
0411nobodyさん2010/07/05(月) 13:10:07ID:???
>>409
どのくらい複雑なHOST名にしてるのか知らないけど、
Hostnameでも複数ルートを登録できるから、その程度の理由なら自作しなくてもいいな。
他にも理由があったと言う他を思い出したら教えて

>>410はプラグインとZend_Applicationで処理するのが常道だけど、
Routerに書いてんの?Routerでプラグイン登録?まぁ、いいけど。
0412nobodyさん2010/07/05(月) 14:56:06ID:???
>>411
あ、RouterでPlugin登録してるわけじゃないよ。

Module別Bootstrapはあるけど、
Module別Pluginが欲しかったから
Routeされた段階で遅延登録されるようにした。

Host数=Module数は30個くらい?で、
その中でもさらにサブドメイン(?)をパラメータにして
いろいろやってた。

ちなみに今のバージョンでどうなのかは知らない。。
0413nobodyさん2010/07/05(月) 15:00:43ID:???
あとroutesの設定ファイルがXMLで
route要素もextendsとか多用してて複雑になってたから
標準のRoute_Hostnameだと
対応できなかったから自作したんだっけかな?
0414nobodyさん2010/07/05(月) 15:05:19ID:???
そうだ思い出してきた。

まず正規表現でHostnameからパラメータ取得したかったのと、
その際にPunycodeをデコードしたかったんだった。
0415nobodyさん2010/07/05(月) 15:48:35ID:???
なるほどねー
おれだったら、正規表現はmod_rewriteで済ませて、
デコードはルーティングに入る前にプラグイン処理だな。
もしくは、RouterじゃなくてRouteで。
まぁ、Routerでもいけるだろうけど。
0416nobodyさん2010/07/05(月) 17:46:39ID:???
ぷに〜コードのデコードめんどくさくてフレームワーク放棄した俺とは大違いだ(笑)
0417nobodyさん2010/07/13(火) 22:41:12ID:???
よくPlugin作ってdispatchLoopStartupに認証や共通処理をうんぬんって見るけどさ、
画像のリンクが切れてるだけでdispatchLoopStartup何回も走るとかうぜぇ・・
0418nobodyさん2010/07/14(水) 00:21:27ID:???
「画像のリンクが切れてるだけ」と事前に判別出来るなら、
dispatchする前に別処理へ移行すればいいだけの話だ
0419nobodyさん2010/07/14(水) 05:41:59ID:???
>>417
mod_rewriteで対処でしょ jk
0420nobodyさん2010/07/16(金) 15:47:04ID:???
Zend_FormでsymfonyにあたるsfFormのsetNameFormatってどうやったらいいの?
0421nobodyさん2010/07/22(木) 09:02:40ID:8xnHx2ro
初心者です。
ネットとかみてZend_Fromを勉強中ですが、デコレーターとかのファイルを
どこに置いていますか?
Contoroller内?????
0422nobodyさん2010/07/23(金) 14:07:23ID:???
フィルタじゃね
0423nobodyさん2010/07/30(金) 23:46:03ID:???
なぜか1.10.7がダウンロードできた
0424nobodyさん2010/08/07(土) 14:32:30ID:???
1.1から2.0は簡単に移行できるの?
0425nobodyさん2010/08/07(土) 22:28:35ID:???
2.0ってnamespaceとか使うから
簡単にはいかないんじゃない?
使わないの?
0426nobodyさん2010/09/01(水) 17:07:49ID:???
どうも。

MySQLを使用してるのですが、単純なサブクエリを実装して、
ZendFrameWork経由でデータを取得しようとしたのですが、
取得できませんでした。

発行しているSQLをコマンドラインで実行すると
ちゃんとデータを取得できました。


ZendFrameWorkってサブクエリが使用できないなどといった
制限があったりするのでしょうか?
04274262010/09/01(水) 17:14:57ID:1WzgUIV/
すみません。

バインドも使っています。
0428nobodyさん2010/09/01(水) 17:27:19ID:???
「できませんでした」の詳細を書かないとわからんわ
0429nobodyさん2010/09/02(木) 01:35:42ID:???
バインドされている値が間違ってるとかじゃね?
04304262010/09/02(木) 14:41:33ID:bqeUspcn
>>428 429

こんな感じのSQLを投げてます。
select colA1,colA2 (select count(colB3) from tableB where colB4 = :bind1 and colB5=bind2)as col3 from tableA where colA6 = :bind1 and colA7 = :bind2 and colA8 = 'hoge';

バインドを使用しているbind1とbind2の部分に直接値を記述すると
レコードは取得できるのですが、
プログラムからbind機構を使うとレコードを取得できません。

select colA1,colA2 (select count(colB3) from tableB as b where colB4 = a.colA6 and colB5=a.colA7)as col3 from tableA as a where colA6 = :bind1 and colA7 = :bind2 and colA8 = 'hoge';
とした場合はうまく動きました。

bind変数を複数個使っているのが原因でしょうか?
無知な私に救いを。
よろしくお願いします。
0431nobodyさん2010/09/02(木) 22:02:42ID:VdyJTTz3
>>430
実際の呼んでる所のコードも書かないと分からんよ。
0432nobodyさん2010/09/03(金) 00:06:56ID:???
>>430
SQLエラーやPHPエラーは出ていない?

Zend_Db_Profilerやらで、Zend_Dbから発行されているSQL文を検証してごらん。
0433nobodyさん2010/09/04(土) 16:12:12ID:???
あ、自己解決しました。
04344262010/09/06(月) 11:06:46ID:???
>>433
まだ自己解決していないです。

>>431
このような感じで実装しています。

//バインドの設定
$bind = array('bind1'=>'aaa1','bind2'=>'bbb2');
//クエリの実行$dbInfoの中にはDBへの接続設定が入っています。
$db = new Zend_Db_Adapter_Pdo_Mysql($dbInfo);
$stmt = $db->query($sql,$bind);
$rows = $stmt->fetchAll();
としています。

$rowsの中をダンプで出力すると、
select colA1,colA2 (select count(colB3) from tableB where colB4 = :bind1 and colB5=bind2)as col3 from tableA where colA6 = :bind1 and colA7 = :bind2 and colA8 = 'hoge';
の場合は何もデータがないarray()。

select colA1,colA2 (select count(colB3) from tableB as b where colB4 = a.colA6 and colB5=a.colA7)as col3 from tableA as a where colA6 = :bind1 and colA7 = :bind2 and colA8 = 'hoge';
の場合はレコードが取得できています。

>>432
SQLでも、PHPでもエラーは何も出ておりませんでした。。。

Zend_Db_Profilerで出力される情報を
バインド変数で指定している箇所に埋め込むと
しっかりとレコードが取得できました。
ホントにちんぷんかんぷんチンプイワン太夫です。

どうぞよろしくお願いいたします。
0435nobodyさん2010/09/06(月) 21:31:31ID:???
>colB5=bind2

普通にここ、コロンがないよね
0436nobodyさん2010/09/07(火) 03:37:56ID:eLHDoNIE
よろしくお願いします。zend_dbのトランザクションを以下のようにしています

$t_kihon = $this->_config->table->scheduleKihon;
$t_player = $this->_config->table->schedulePlayer;
$where_kihon = array(
$this->_dbConn->quoteInto('uId=?', $uId),
$this->_dbConn->quoteInto('uType=?', $uId),
$this->_dbConn->quoteInto('id=?', $deleteId)
);
$where_player = array($this->_dbConn->quoteInto('evId=?', $deleteId));

try{
$this->_dbConn->beginTransaction();
$ret_k = $this->_dbConn->delete($t_kihon, $where_kihon);
echo "基本>".$ret_k;
echo "<br />";
$ret_p = $this->_dbConn->delete($t_player, $where_player);
echo "出演者>".$ret_p;
echo "<br />";
$ret_c = $this->_dbConn->commit();
echo "commit>".$ret_c;
echo "<br />";
$commit = 1;
}catch (Zend_Db_Statement_Exception $e){//トランザクション失敗
$this->_dbConn->rollBack();
print($e->getMessage());
}catch (Exception $e){
print($e->getMessage());
}

つづきます
04374362010/09/07(火) 03:39:11ID:eLHDoNIE
この処理で、$where_kihonの中で一カ所故意に間違えているので('uType=?', $uId)
echo "基本>".$ret_k;の結果は「基本>0」となるものの、
echo "出演者>".$ret_p;の結果は「基本>1」となり、
実際にテーブルから該当情報が削除されてしまいます。なぜでしょうか?

$t_kihon向けのクエリが失敗しているのだから、$t_player向けのクエリも失敗し
ロールバックするのでは?と思っていましたが違うんでしょうか?
なお、echo "commit>".$ret_c;の部分の出力はされません

Zend_dbの知識以前の話になっているかもしれませんが、すみませんが
ご意見よろしくお願いします
0438nobodyさん2010/09/07(火) 10:34:39ID:an1mTvTq
Zend FrameworkのMVCモデルを使ってます。
エラーになった場合、ほとんどのケースで
'Invalid controller specified (error)'
のエラーメッセージしかでなくてどのが悪いのか
みつけるのにすごく時間がかかるのですが、
これが普通なのでしょうか?
0439nobodyさん2010/09/07(火) 11:57:19ID:???
設計が悪いとしか。ソフトの勉強した事無いでしょ?
0440nobodyさん2010/09/07(火) 12:48:16ID:an1mTvTq
>>439
工夫しないとそうなるということですね?
それについての資料などありませんか?


04414262010/09/07(火) 12:56:14ID:???
>>435
すみません。その箇所は転載時の発生した誤りになります。
実際はしっかりと「:」を入れているので、
SQLの構築でのエラーも出ていない状況なんです。

なんとも不可思議な感じです。
0442nobodyさん2010/09/07(火) 13:40:25ID:jaTKXsd6
>438
errorコントローラがないっていってるので作ってその中で(開発時のみ)色々情報出力すればOK
例外handlingはここ読むべし
ttp://framework.zend.com/manual/ja/zend.controller.exceptions.html
0443nobodyさん2010/09/07(火) 13:41:23ID:QU8+yQCW
>>441
DB側でログ取って、どんなSQLになっているか見てみて

>>438
エラーコントローラーを無効にして、エラーを表示したらいいよ。
0444nobodyさん2010/09/07(火) 15:07:59ID:an1mTvTq
>>442,443
ありがとうございます。調べてみます。
0445nobodyさん2010/09/07(火) 21:53:55ID:???
>>441
要はPDOのpreparedが普通に使えるかってことだろ?
テストしてみればすぐわかるんじゃね?下で普通に動いたけどな。

    $queryString = "select colA1,colA2, (
                        select count(colB1)
                        from tableB
                        where colB2 = :bind1 and colB3 = :bind2
                       )as colA3
            from tableA
            where colA6 = :bind1 and
               colA7 = :bind2 and
               colA8 = 'hoge'";

    $dbAdapter = Zend_Db::factory('PDO_MYSQL', $info));

    $stmt = $dbAdapter->prepare($queryString);

    $parameters = array(':bind1',':bind2');
    $values = array(1, 2);

    $stmt->bindValue($parameters[0], $values[0]);
    $stmt->bindValue($parameters[1], $values[1]);
    $stmt->execute();
    $data = $stmt->fetchAll(PDO::FETCH_OBJ);
    $stmt->closeCursor();
04464262010/09/11(土) 16:05:36ID:???
>>443
SQLにも問題なさそうでした。
副問い合わせのバインド変数の名称に
別のものを指定すると、こちらの期待通りの動きになりました。

釈然としませんが、とりあえず、プレースホルダの名称を別のものにして
やっていってみたいと思います。
0447nobodyさん2010/09/15(水) 06:29:22ID:c+gNv7dN
>>446
DB側でログとってないでしょ。
うまくいったときと、いかないときと同じSQLが発行されているわけがない。

スペルミスでした、って正直に書けないのかな
0448nobodyさん2010/09/15(水) 10:49:01ID:???
いちいち余計なこと言わないと気がすまないのも面倒な性格だな。俺とかw
0449nobodyさん2010/09/15(水) 10:57:10ID:???
ZFをやるならdwooも覚えたほうがいいよ
zendは公式サイトで解説してるほどdwooを押してるからね
0450nobodyさん2010/09/15(水) 15:39:54ID:???
dwooってなんて発音するの?
0451nobodyさん2010/09/17(金) 01:02:51ID:???
ドゥヲゥ!!
04524492010/09/17(金) 12:21:09ID:???
一応ページはここね
http://devzone.zend.com/article/12322
0453nobodyさん2010/09/17(金) 14:55:33ID:???
公式と言っても、そのサイトはPHP関連の技術全般を紹介するブログみたいなもので
ZendがDwooを特別にプッシュしてるわけではないのでは?
0454nobodyさん2010/09/17(金) 15:27:29ID:???
Vikram Vaswaniさんがこういう使い方もできますよって紹介記事書いてるだけだな
SoftwareDesignとかWeb+DB Pressの記事みたいなもんだ
0455nobodyさん2010/09/17(金) 17:17:36ID:???
>>449
それ言ったらsymfonyだって解説してたわけだが
0456nobodyさん2010/09/18(土) 00:21:20ID:???
>>449
それ言ったら公式ドキュメントにはSmatryViewの作り方まで載ってるぜ
0457nobodyさん2010/09/18(土) 03:15:59ID:HoVONag+
質問なんだけど、リクエストオブジェクトで $_FILESに当たるものを取得するにはどうしたらいいの?
無理なのかな。無理だとしたらどうやって取得すべき?
getParam('picture')とかやったんだけど無理だった。すみませんが教えてください
0458nobodyさん2010/09/18(土) 13:16:26ID:???
Zend_Form_Element_File を調べて、関連記事から他人がどうやってるか見るよろし
0459nobodyさん2010/09/19(日) 00:06:18ID:uSiTgTXw
>>458
ありがとうございます
しかしzend_formって扱いにくいんで使ってないんだけど、$_FILESの制御のために導入するなんて…
みんなzend_form使ってるの? そんなに便利?
0460nobodyさん2010/09/19(日) 00:27:48ID:iCptYkYB
>>459
ドキュメント読もうぜ。
http://framework.zend.com/manual/ja/zend.file.transfer.introduction.html
0461nobodyさん2010/09/19(日) 03:19:18ID:???
馬鹿にはzendは無理。
0462nobodyさん2010/09/19(日) 04:20:52ID:???
>>457-
>無理なのかな。無理だとしたらどうやって取得すべき?
Zend_Formを使っていないのであれば、
リクエストオブジェクトを継承した$_FILESも取得出来る子クラスを作るのが良いかと・・・
(もし必要であれば、その子クラス中でZend_Formを使えばいいし)
0463nobodyさん2010/09/19(日) 17:59:19ID:???
Zend_OpenIdの
TODO: OpenID 2.0 (7.3) XRI and Yadis discovery
がなくなってたから、
yahoo.co.jpやmixi.jpでログインテストしてみたんだけど、
エラーになっちゃう・・・

まだ対応してないのかな?
0464nobodyさん2010/09/22(水) 17:02:23ID:???
ところでさ、Zend Framework とその後ってぶっちゃけどうよ
おれもそこそこ使ってきたけど、新規案件で使うべきか迷ってる
使うなら、2.0を試すべき?
0465nobodyさん2010/09/23(木) 00:18:04ID:???
>>464
今まで使っていて新規案件で使わない理由は?
0466nobodyさん2010/09/23(木) 01:19:05ID:???
オートロード楽チン
ブートストラップ書けば大抵どうにかなる
ビューが無駄に適当でPHPそのまま
中のクラスが単体でも呼べる
外部モジュールのラッパークラスが多い

粗結合いいとこ取りだけどなんかperlぽい気がするんだよね
0467nobodyさん2010/09/23(木) 02:38:04ID:???
>>459
ZendFormは確かに使いづらいけども、他に選択肢がなくね?
ZendForm使わないで、フォームどうしてるの?
煽りとかじゃなくて普通に疑問なんだけど、
↓こんな感じなの?

<select name="Hoge">
<option value="1" <?php if ($value == 1) echo "selected"; ?>>
<option value="2" <?php if ($value == 2) echo "selected"; ?>>
</select>
0468nobodyさん2010/09/23(木) 02:52:30ID:az/C8i5M
>>467
View Helper 使えばいいんじゃね?
0469nobodyさん2010/09/23(木) 02:59:54ID:???
>>467
sfForm
0470nobodyさん2010/09/23(木) 04:12:58ID:???
えっフォームの部分だけSymfony使うの?
0471nobodyさん2010/09/23(木) 04:36:38ID:???
ZendFormはオブジェクト組み立ててバリデータだけ使ってる
0472nobodyさん2010/09/23(木) 08:21:59ID:???
>>470
symfony使わなくてもフォームだけ抜き出して使える
0473nobodyさん2010/09/23(木) 10:21:11ID:???
>>465
リリースタイミング的にphp5.3もしくは6でメンテ&追加開発していくので、
そのメリットを生かせるFWにしようかと。
0474nobodyさん2010/09/23(木) 10:45:19ID:???
え?PHP6て白紙になったやつだけど?
0475nobodyさん2010/09/23(木) 14:16:25ID:???
そうだったね。ってことでphp5.3なんだけど
04764592010/09/23(木) 16:26:48ID:???
>>467
smartyと組み合わせてる。
zendformとsmartyが共存出来るかわからないけど、
smartyで自前の関数用意して
<select name="prefecture">
{$val|selecterChk:"prefecture"}
</select>
とかなんとかやって呼び出して解決する方法になれすぎちゃってzendFormに
入れなくなっちゃった。
0477nobodyさん2010/09/23(木) 16:40:00ID:y1pwafIu
zend_dbのdeleteメソッドについて質問させてください。

以下のdelete処理を実行したところ
-----------
 echo "picTblId>>".$picTblId;
 echo "reportId>>".$reportId;

 $where = array(
  $this->_dbConn->quoteInto('id=?', $picTblId),
  $this->_dbConn->quoteInto('reportId=?', $reportId)
 );
 $retP = $this->_dbConn->delete($t_pic, $where);
========

以下のエラーが出ました。
-----------
 picTblId>>7
 reportId>>41

 SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax;
 check the manual that corresponds to your MySQL server version for the right syntax to use
 near 'WHERE `id` ='41' AND `reportId` ='41'' at line 9
========

エラー文の中で、`id`='41'ってなってるのが理解できません。7のはずでは?
また at line 9 となっていますが、このクエリ処理を書いているモデルファイル(.php)は
2000行くらいあって、この処理は9行目なんかに書いていません。
実際の9行目はクラスの宣言部分です。
どう考えたら良いのでしょうか、ご意見お願いします。

php5 ZF1.10です。
0478nobodyさん2010/09/23(木) 17:11:52ID:???
とりあえず、quoteIntoの返り値を見てみたら?
で、9行目ってのはSQL文の9行目じゃね?
04794772010/09/23(木) 18:00:12ID:y1pwafIu
>>478
おお、どうもありがとうございます!

 $where = array(
  $this->_dbConn->quoteInto('id=?', $picTblId),
  $this->_dbConn->quoteInto('reportId=?', $reportId)
 );
 var_dump($where); 

としたところ、
array(2) { [0]=> string(6) "id='7'" [1]=> string(13) "reportId='41'" }
となりました。ちゃんと入ってる…

>で、9行目ってのはSQL文の9行目じゃね?
納得です。
生成されたクエリ文を表示する方法はないんでしょうか?
04804772010/09/23(木) 18:55:24ID:???
すみません、解決しました。
詳細は下らな過ぎて書きませんが自分の凡ミスでした。

一つだけ気になってるんですが、Zend_dbクラスでの deleteメソッドで生成されるクエリ文を
確認する方法はないんでしょうか?
Zend_db_tableのselectメソッドだと __toStringを使って出来ますよね?
それに似たものはないのかなと… 
0481nobodyさん2010/09/25(土) 13:12:44ID:???
>>476
なるほど、既存のリソース(pluginだっけ?)を生かせるし、そういうのはありですね。

偏見かもしれないけど、ZendのFormはせっかくPHPが柔軟な言語なのに、
なんか無理矢理オブジェクト指向にしてる気がする。

まあ確かに利点もあるとは思うけど、場合によってはデメリットも目立つよね。
べた書きなら数行で済むような簡単なフォームでもZendFormだと数十行になっちゃう事とかあるし。

特にSmartyと組み合わせる前提なら、ZendFormとは相性が悪いし、デメリットばっかりになりそう。
0482nobodyさん2010/09/25(土) 13:25:53ID:???
>>480
実行後でいいなら、profilerでできる気がする

$profiler = $dbAdapter->getProfiler();
var_dump($profiler->getQueryProfiles());

俺はdbAdapter直接触るような場合はいつも直接SQL作成して
$dbAdapter->query($sql);
でやってる。
これなら実行前にdumpなりなんなり出来るし。
0483nobodyさん2010/09/25(土) 19:28:24ID:???
adapterって実行したクエリを全部保存してるの?
状況によっては、すごいメモリ食いそうだけど
0484nobodyさん2010/09/25(土) 23:16:09ID:???
>>483
あ、factoryメソッドのオプションでprofile = trueみたいに指定する必要はあるね。
いつも開発環境では常にtrueにしてるから気づかなかった。
0485nobodyさん2010/10/09(土) 15:33:32ID:1KEL8kwG
質問です
zendDBでinsertなりupdateなりdeleteなりが正常に処理できたか確認したいんだけど
みんなどんな方法でやってますか?
しらべたらrowCountを見つけたけど、他に方法ないですか?
0486nobodyさん2010/10/09(土) 17:17:01ID:???
何を持って正常と判断するかは、ロジック次第なので何とも・・・
0487nobodyさん2010/10/09(土) 17:37:49ID:c5ynP6XY
過去レス読めばいいのかもしれんけど、ちょっと知りたい事があります。
今までフレームワーク無しでPHP使ってきたんだけど、最近ZendFrameworkを使ってみようかと思っています。でも、いまいち踏み切れません。(CakePHPのほうがいいのかな? と思ったり)

ZendFrameworkのメリット/デメリットを教えてもらえませんか?
0488nobodyさん2010/10/09(土) 17:55:35ID:???
>>487

CakePHPにZendFramework組み合わせて使うのは?
0489nobodyさん2010/10/09(土) 18:53:54ID:1KEL8kwG
>>486
単純に、insertならちゃんとデータが登録されたか、updateなら変更されたか
そういうことを確認したいんです
それが確認出来るメソッドというか機能は備わってないんでしょうか?
0490nobodyさん2010/10/09(土) 19:21:03ID:???
>>489
返り値が0かどうかじゃだめなの?
0491nobodyさん2010/10/09(土) 21:46:07ID:???
>>487
かなり偏見かもしれないが、良くも悪くも
・CakePHPはウェブアプリケーション開発のためのFW
・ZendはPHPプログラムのためのFWって感じで、PEARの集まりみたいな感じ

web開発するにあたって、cakeならすんなりできる部分も、
Zendなら色々classを呼び出すなり、子クラス実装するなりしなきゃいけなかったりする。
Zendの方がハードルが高いのはまあ間違いない。
■ このスレッドは過去ログ倉庫に格納されています