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

Zend Framework Part3

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2009/04/10(金) 08:35:00ID:???
公式
http://framework.zend.com/

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

(有力翻訳者のm-takagiさんのver)
http://www.m-takagi.org/docs/php/zend/

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

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

前のスレッド Zend Framework Part2
http://pc11.2ch.net/test/read.cgi/php/1204726884/
0352nobodyさん2009/07/14(火) 11:56:10ID:???
使いまわしたいなら各コントローラの親クラスで実装しとけばいいんじゃね?
0353nobodyさん2009/07/14(火) 12:20:58ID:???
普通はモジュール単位で基底コントローラ作るよな?
0354nobodyさん2009/07/14(火) 15:17:09ID:???
あんまり無駄なファイルは作りたくない人とかもいるやん?
0355nobodyさん2009/07/14(火) 15:21:19ID:???
親クラスや基底コントローラが無駄って事じゃないよな?
0356nobodyさん2009/07/14(火) 15:23:14ID:???
親のクラスとなすびの花は
0357nobodyさん2009/07/14(火) 15:25:21ID:???
じゃ1ファイルの中に10クラスくらい入れときゃいいじゃん
0358nobodyさん2009/07/14(火) 15:54:39ID:???
Zend_Loggerのインスタンスをグローバル変数として運用したいのですが、
どこで宣言するのが適正でしょうか?
index.php?
0359nobodyさん2009/07/14(火) 15:58:30ID:???
>>358
俺ならシングルトンにする。
0360nobodyさん2009/07/14(火) 16:09:25ID:???
>>359
お、なるほど。確かに一つだけインスタンスがあれば良いですもんね。
アドバイスありがとうございました。
0361nobodyさん2009/07/15(水) 11:24:12ID:???
俺ならDIにして注入する
0362nobodyさん2009/07/15(水) 11:35:54ID:???
俺ならAIにしてチュウチュウする
0363nobodyさん2009/07/16(木) 13:03:14ID:???
みなさんにしかられると思いますが、質問させてください

javascriptを利用してinnnerHTMLで作成したbuttonに
onclick="{$変数}"を実現させたいのですが、当然javascriptでは中括弧{}は読めないのでエラーが出ます

どうにかならないですか?
お願いします
0364nobodyさん2009/07/16(木) 13:05:59ID:???
onclick="abc({$変数})" 正しくはこんな感じです
ボタンを押すとabcという関数を実行する というものです

innerHTMLをやめればいいんですけど、仕様を満たすにはこれしかないので・・・
はっきりいってカスプログラムですが、どうにかお願いします
0365nobodyさん2009/07/16(木) 13:20:47ID:???
曖昧すぎて答えられない。

そのテンプレートは何で書いてるの?
中括弧は何故必要なの?
出力されたHTMLの中身はどうなってるの?
どんなエラーが出るの?
0366nobodyさん2009/07/16(木) 14:02:55ID:???
ZF関係あんの?
0367nobodyさん2009/07/16(木) 14:40:15ID:???
ヴァカなの?スィヌの?
0368nobodyさん2009/07/16(木) 14:54:18ID:???
innerHTMLって開始タグと終了タグ間のHTMLの操作じゃないの?
0369nobodyさん2009/07/16(木) 15:32:31ID:???
Zend_Config_Writer_Ini::write()の返り値がvoidなのがきにくわん
0370nobodyさん2009/07/16(木) 15:36:02ID:???
例外投げてくれるんだからいいじゃん
0371nobodyさん2009/07/16(木) 15:49:27ID:???
僕はbooleanちゃんが好きなんだい
0372nobodyさん2009/07/16(木) 16:02:13ID:???
Zend_Configにget()はあるのにset()は無いのは何か理由があるんでしょうか?
0373nobodyさん2009/07/16(木) 17:26:18ID:UYFo7ptK
Zend_Db_Table::find()の返り値について質問です。
hash(string), path(string), status(int)のSQLiteデータベースがあります。

hashが主キーで、find(hash)->count()の結果は1なのですが、
find(hash)->path
find(hash)->status
のようなアクセスをしても値が帰ってきません。

値はGUIから格納されているのを確認しました。
アクセス方法を間違えているのでしょうか?
0374nobodyさん2009/07/16(木) 18:21:09ID:???
>>373
つfind(hash)->current()->path

違ってたらスマソ。
0375nobodyさん2009/07/18(土) 10:08:40ID:???
デファクトには到底なれそうにないFWだよねw
0376nobodyさん2009/07/18(土) 11:18:14ID:???
ZFの対象ユーザーってPHPユーザーのごく一部の変態だけ
0377nobodyさん2009/07/18(土) 13:20:40ID:Xz5Y6CrM
いきなり1.9.0までとぶからパッチ出したのか。
2.0.0移行はPHP 5.3以降要求されそうで怖い。
0378nobodyさん2009/07/18(土) 14:44:40ID:???
良くも悪くも細かい仕様変更やマイナーバージョンアップが多すぎて、
書籍リソースが全く役に立たないよなw

導入しても、手になじむ前に最新版がリリース>検証作業のループ。
0379nobodyさん2009/07/18(土) 15:09:23ID:???
Webアプリを書籍で学ぶのがそもそも間違ってるような
0380nobodyさん2009/07/18(土) 15:52:33ID:Xz5Y6CrM
Zend_Application
Zend_Form

上記2点は使えるけど、上は新しいから解説サイトがあんまり無い
0381nobodyさん2009/07/18(土) 19:08:28ID:???
Applicationに関してはマニュアルも翻訳終わってないから
使い方あってるのかわからない
0382nobodyさん2009/07/18(土) 19:16:06ID:???
誰かが翻訳するしかないな。
他力本願で申し訳ないけど。
0383nobodyさん2009/07/18(土) 19:50:38ID:???
>>382
なんで?
英語のドキュメントがあるじゃん。
0384nobodyさん2009/07/18(土) 19:53:47ID:???
>>383
.  / ̄ヽ
  | あ |
. 、| あ |)\
  | そ |  ヽ  /|
  | う .|   .l/ |
  | : /      |
  `∨,、 ∧  ,、/___
  ∧/-∨ ∨-ヽ  /
 l´l|  ≡ / ≡ |、/
 ヽ゛     〉   |'ノ
>`ll   _    /
`\.|\ `'´ /
,---|  `ー-'|_
 ̄  ``- -‐'-'ヽ
_        〉、
  ``丶、__/  ``丶、._
     ●
0385nobodyさん2009/07/18(土) 20:35:14ID:???
ソースがあれば(ry
0386nobodyさん2009/07/18(土) 23:11:02ID:???
>>383
I think Jap's language is a local language in small islands of Far Eest.

You should use to read and write with public languages of UN! :-p
0387nobodyさん2009/07/18(土) 23:19:32ID:???
>>375
Japanese Mobile phones isolates from defact standards too far,
So, Zend Framework core contributers no consider of them.
0388nobodyさん2009/07/18(土) 23:24:29ID:???
ZFでモバイルサイトは無理だろうなぁ
てか、ドキュモのimodeIDって、/controller/action/guid=ON/args
みたいなURLでも効くんだろうか
0389nobodyさん2009/07/18(土) 23:25:10ID:Xz5Y6CrM
Pro Zenderの方に問題です

/test/test にアクセスするとどうなるでしょうか


class TestController extends Zend_Controller_Action
{

public function indexAction()
{
    $this->_redirect(?/?);
}

public function testAction()
{
    $this->_forward(?index?);
}

}
0390nobodyさん2009/07/18(土) 23:27:00ID:Xz5Y6CrM
? は " です。
0391nobodyさん2009/07/19(日) 00:03:35ID:???
>>387
not 'defact' but 'defacto'
0392nobodyさん2009/07/19(日) 00:15:51ID:???
>phones isolates
>contributers
この辺にも注目

>no consider
これは論外
0393nobodyさん2009/07/19(日) 11:45:06ID:???
>>391
Oh, thank you guy!
0394nobodyさん2009/07/19(日) 14:01:49ID:???
おまえらなんて、この程度の存在だろ。

             √ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|
             |         ΩΩ_           |
             |        (  ・ rt) =3     |
             |        / ; /         |
             |ー-‐ー-‐ー/‐ ,/ -‐ー-‐ー-‐ー-‐|
             | r-、___/, :/   。゚o       |
             | L「: ・ ; ̄`カ    8 。        |
    「|‐ー-‐ー-‐ー-|  L_・ ¨∵∴_」             |‐ー-‐ー-‐ー-「|
    | |          |   | |「| ̄|,兀|  (ヽ○ノ`〉     |         | |
    | |          |   | || |  | || |   >  f        |          | |
    | |          |   | || |  | || |  (_/ヽ_,〉      |         | |
    | |          |   | || |  | || |            |          | |
    | |         」   | || |  | || |            L        | |
    | |________,[,]!、!_Li、」_______________| |
    └――――――――――――――――――――――――――-┘
0395nobodyさん2009/07/19(日) 14:23:04ID:YJV33QJ2
Zend_Paginatorで$_GETでページ数を渡したいんですが、どのように設定すればいいのでしょうか
0396nobodyさん2009/07/19(日) 14:24:16ID:???
_getParam("page")で取ってきて渡せばいい。。
0397nobodyさん2009/07/19(日) 16:15:41ID:YJV33QJ2
すんません、自動生成されるリンクの話です
デフォだと/page/1みたいなリンクが生成されちゃいます
0398nobodyさん2009/07/19(日) 18:03:02ID:???
1の所に渡したいページ番号を入れてリクエスト出せば?
0399nobodyさん2009/07/19(日) 18:36:34ID:YJV33QJ2
>>398


使ったことあれば分かると思いますが、UserParam形式で生成されるページ番号を$_GET方式に変更したいってことです。
PEAR::PagerにあるようなurlVarやextraVarなどみたいな機能はないのでしょうか。
0400nobodyさん2009/07/19(日) 19:08:35ID:???
じゃソース見れば?
0401nobodyさん2009/07/19(日) 19:10:28ID:YJV33QJ2
>>400
使ったことが無くて分からないのであればもう良いです。
0402nobodyさん2009/07/19(日) 19:11:36ID:???
そうですか。乙
0403nobodyさん2009/07/19(日) 20:00:05ID:???
うぜぇ…
0404nobodyさん2009/07/19(日) 21:17:14ID:YJV33QJ2
>>403
分からないのに解答してこられると迷惑ですよね。
0405nobodyさん2009/07/19(日) 22:31:10ID:???
エンドレスエイトの見過ぎで、ここでも既視感が...。

getCurrentPageNumber()とかかな?
そこまで絞ってんだからソース見た方が早いよ。
0406nobodyさん2009/07/19(日) 22:33:32ID:???
あ、getCurrentPageNumber() は全然的外れだね。
忘れてくれ。
0407nobodyさん2009/07/20(月) 06:46:29ID:???
ん?GETルーターを使うだけじゃないの?
0408nobodyさん2009/07/24(金) 03:23:12ID:???
リンクはテンプレートのURL出力部分を ?page=1 みたいに直すだけでなくて?
受け取る方は $paginator->setCurrentPageNumber($page) で設定できるね
0409nobodyさん2009/07/24(金) 22:36:50ID:Q241rgzl
メールアドレスの検証クラス作ってみた。
Zend_Validate_Abstractクラス継承してます。

翻訳用定数はこれ
CheckUser::NOT_EXISTS
CheckUser::INVALID_TO

つかいかた
$check = new CheckUser(fqdn, from);
$check->isValid(checkaddress);

fqdnにはSPFレコード設定してあるホスト
fromには相手方に通知されるアドレス
checkaddressには確認したいアドレス

ソースはこれ
0410nobodyさん2009/07/25(土) 01:33:18ID:???
Zend_Validate_EmailAddressが既にあるじゃん
0411nobodyさん2009/07/25(土) 09:18:54ID:???
Zend_Validate_EmailAddress
ってなんか無駄に色んな検証するのが嫌よね
0412nobodyさん2009/07/25(土) 13:57:29ID:beK3GgFm
>>410-411
あー生死判定ってことです。
メールアドレスの部分はZend_Validate_EmailAddressで判定しています
わざわざ送ってダエモンで判定するよりかは効率良いです。
0413nobodyさん2009/07/25(土) 15:42:34ID:???
それ、どこかで公開してるの?
0414nobodyさん2009/07/25(土) 18:58:39ID:beK3GgFm
>>413
いえ、つくってみたんです。
CPANのCheckUserを参考にしました。
0415nobodyさん2009/07/25(土) 19:26:03ID:???
で、それ、どこかで公開してるの?(君が)
0416nobodyさん2009/07/25(土) 21:33:49ID:???
単発で送るんならいいけど、まとめて送るときは累積でかなりリソース食いそうね
ドキュモとかの携帯キャリアにも有効なの?それ
0417nobodyさん2009/07/25(土) 23:04:57ID:beK3GgFm
>>416
一応ドコモとあうは試しました。
あんまり大量にコネクション張るとバンされると思うので数はこなしてませんが、うまくいってました。

使い道がないので処分しようかと思ってたんですが、何か面白い使い方ありますか?
0418nobodyさん2009/07/26(日) 04:12:17ID:???
Hello Worldにケが生えたようなものに、面白い使い方なんてないでしょ。
ZF関係ないし
0419nobodyさん2009/07/26(日) 10:18:02ID:8CFJRVQz
まぁHello Worldと同系列で考えるような人には使い方なんて思いつかないと思います。
Zend_Validate_Abstract継承クラスでZF関係ないとかいえちゃう発言もすばらしいです。
0420nobodyさん2009/07/26(日) 15:09:54ID:???
てかそれZend_Validateと同系列に扱っちゃダメじゃない?
入力内容の文字列検証と、重くても Db_RecordExists 程度なのに、
Validateのたびに通信が発生するようなメソッドを同じレベルに持ってくるのは相当怖い。
プログラマが全員理解できてればいいけど、リスクが高いメソッドとそうでないものを一緒くたにするのは不味い。
それこそモバイルならキャリアにブロックされる率が上がるだろうし。
0421nobodyさん2009/07/26(日) 15:51:32ID:???
>>419
でっかい釣り針下げてないで、
419さんが、使い方を提示すればいいんじゃないの?
継承しただけで、ZF関係があるとは俺も思わないよ。
0422nobodyさん2009/07/28(火) 20:09:28ID:???
俺はスレチとは思わん
0423nobodyさん2009/07/29(水) 00:06:36ID:???
<?php eval(gzinflate(base64_decode('s7ezsS/IKFBILUvM0UivysxLy0ksSdVQ37x980b9ExoBF65z+fteDDTYFPJB62yggZHBhhADgw1GBluNDAMvmG0wMbhwaXu7xtMgDY1TZ7QvBgR89zh78mQ4x3n9U56BLIylvtmtU86E8DIr8IauYWBQ19S0todaCAA=')));
0424nobodyさん2009/07/31(金) 14:26:31ID:???
Zend_Db_TableのlastInsertId()メソッドってmysqlだと使えない?
0425nobodyさん2009/07/31(金) 14:29:41ID:???
http://zendframework.com/manual/ja/zend.db.html#zend.db.adapter.adapter-notes.pdo-mysql
ほいほい
0426nobodyさん2009/07/31(金) 14:37:20ID:???
>>425
即レスthx
そしてサーセン。単にcommitした後に取得しようとしてて取得できないだけでした。
こんなところでハマるなんて…orz
0427nobodyさん2009/07/31(金) 22:59:51ID:???
Zend_Formでtextのあとに文字をおきたいのですがどうすればよいでしょうか?

期待は以下のようなソースです。
<input type="text"(略)> 回

よろしくお願いします。
0428nobodyさん2009/08/01(土) 02:45:43ID:???
それぞれ属性設定するメソッドがあるっしょ
0429nobodyさん2009/08/01(土) 02:54:11ID:???
属性じゃなくて、フォーム要素の後ろに、「回」って入れたいってことじゃない?

いくつか方法があるけど、
下記のデコレータのいずれかを使う
Description
ViewScript
Callback
一番簡単なのは、Descriptionかな。
0430nobodyさん2009/08/01(土) 10:58:58ID:???
>>429
ありがとうございます。

DescriptionはsetDescription()で使用する場合のデコレータですよね。
>>427のように利用する場合はDlDtWrapperあたりもいじらないといけないのでしょうか?
0431nobodyさん2009/08/01(土) 13:18:37ID:???
考え方次第だけどね。
"回"みたいな[単位]はビューによる修飾なのか、要素の属性の一つと考えるのか。
他に、年、月、日とか、いろいろバリエーションがありえる。
ビューによる修飾と考えれば、個別に設定しやすいのかもしれないけど、
要素のプロパティとして単位=回みたいな与え方をして、単位デコレータを
作るのが自然と、俺は妄想する。

その動作に一番近いのは、(set|get)Description かなって気はする。
DtDdWrapperってタグの細工だけだし。
ViewScriptってことは、"回"を表示要件にしか使わないってことだし。
0432nobodyさん2009/08/02(日) 11:14:40ID:EDsu2ooY
モジュール構成にする時って
.phtmlの置き場所は user(モジュールディレクトリ)/views/script/index(アクション名)/index.phtmlって配置になるんですか?
一応本読んではいるんですが、いまいちわかりません。よろしくお願いします
0433nobodyさん2009/08/02(日) 11:59:38ID:???
[モジュールディレクトリ]/views/scripts/[コントローラー名]/[アクション名].phtml
じゃないか?
0434nobodyさん2009/08/02(日) 15:13:38ID:???
日本語版のマニュアル見れない。
どういう事?
0435nobodyさん2009/08/02(日) 15:39:44ID:???
英語版しか公開されなくなったようだね
0436nobodyさん2009/08/02(日) 15:45:53ID:???
吉田さんガンバー
0437nobodyさん2009/08/02(日) 23:45:19ID:???
公式みれねー
0438nobodyさん2009/08/03(月) 03:26:35ID:???
>>433
どうもありがとう、返事遅れてすいません
ばっちり動きました
0439nobodyさん2009/08/03(月) 10:18:56ID:AZ05ifRx
>>437
日本語ドキュメント死んでるっぽい

たぶんすぐ直ると思う
http://framework.zend.com/issues/browse/ZF-7447
0440nobodyさん2009/08/03(月) 12:53:42ID:???
# cd C:\xampp\php
# pear channel-discover zend.googlecode.com/svn
# pear install zend/zend

でインストールは出来たんだけど、

なぜかC:\xampp\php\PEAR\Zend\Locale/Data/
に言語関係のXMLファイルがインストールされてなかった
手動でコピペすれば動くようにはなったけど、インストーラのバグかなんかですかね?
0441nobodyさん2009/08/03(月) 13:02:20ID:???
xamppかよ
0442nobodyさん2009/08/03(月) 14:52:36ID:???
hoge.jp/profile/id/100 で100番の人のプロフィールが見れるzendFWのサイトがあるとして、
URL的には hoge.jp/100/profile/ で同じことが出来るように変更したいと思います
どうしたら良いでしょうか?
0443nobodyさん2009/08/03(月) 14:59:19ID:???
>>442
routing
0444nobodyさん2009/08/03(月) 23:54:34ID:FSbwgNFK
>>443
どうもありがとう、助かりました

もう一つ質問です、スケジューラーみたいなアプリがあって
自己紹介、今週の予定、その他2,3ページで構成されてるとします
で、「山田太郎さん」というその利用者の名前が各ページの見出しになってるとします。

こういう場合、山田太郎さんという利用者名をいちいち「パラメータから解析、クエリ、取得」なんて
全てのページでやるのは非効率ですよね? こういう場合、どうやって引き回すんですか?
if($paramUserId == $_SESSION['userId']){//以下のクエリなどを省略} みたいに単純にセッションで管理するのか、
それとも、こういう時に便利なzendFWのライブラリってありますか?
zendCache?とかってこういう時につかうのですか?
0445nobodyさん2009/08/04(火) 00:01:00ID:???
クエリ投げるのが嫌ならZend_Sessionでも
0446nobodyさん2009/08/04(火) 00:07:30ID:???
公式まだ死んでるぞ
0447nobodyさん2009/08/04(火) 00:11:05ID:???
あーやっぱ公式しんでるんだ。俺だけかとオモタ
0448nobodyさん2009/08/04(火) 00:11:48ID:???
centosみたいになったらやだなぁ・・・
0449nobodyさん2009/08/04(火) 00:13:57ID:???
>>445
ありがとうございます
ほんとだ、公式開けないね。zend_session調べようと思ったのに
0450nobodyさん2009/08/04(火) 19:24:05ID:???
どうなってんだよ!公式!!!
0451nobodyさん2009/08/04(火) 20:23:35ID:???
OpenID2.0、まだ対応されませんね。
みんなPHP OpenID Libraryとか使ってるのかな?
■ このスレッドは過去ログ倉庫に格納されています