08/04/12 15:22:15
>>66
はい、使えています。
>>67
参考に色々やってみたら、少し進んだような手応えがありました。
テンプレートの読み込みまではいったようです。
ただ、テンプレートの中に{$test}のようなsmartyタグを書くとエラーが出ます。
一切タグのない純粋htmlを読み込んでrenderするだけならできています。
テンプレートの中にタグを埋め込むと
Fatal error: Smarty error: [in index.tpl line 6]: [plugin] modifier 'sanitize' is not implemented (core.load_plugins.php, line 118) in
ライブラリのパス Smarty.class.php on line 1092
というエラーがでてしまいます。
恐らくこれを解決すれば表示されるのではないかと思いますが、エラーで検索してみてもこれといった解決法が見つかりませんでした。
in index.tpl line 6
この行に{$book_name}のようなタグがあります。
73:nobodyさん
08/04/12 15:57:34
> 参考に色々やってみたら
何をやったの?
> sanitize
カスタム関数のsanitizeファイルが無いんでしょ。
74:nobodyさん
08/04/12 15:59:52
すいません自己解決しました。
Zendのオフィシャルじゃなくて、少し改良したらしい他のサイトの継承クラス使ってたのが原因でした。
Zendオフィシャルのにしたらエラーは出なくなりましたが、表示はやはりでませんでした。
テンプレートには{$book_name} が埋め込んであります。
実行すると、コンパイル済みディレクトリにファイルが出来てそのタグを埋め込んだ部分が
<?php echo $this->_tpl_vars['book_name']; ?>
となっていました。
そのファイルではそうなっているんですが、Webでアクセスするとその部分が綺麗さっぱり消え去ってしまっています。
そのファイルのタグ該当部分の違いですが
テンプレファイル:{$book_name}
コンパイルファイル:<?php echo $this->_tpl_vars['book_name']; ?>
Webでアクセスしたページのソース:なにもなし
こんな状態です。
75:nobodyさん
08/04/13 17:59:08
綺麗さっぱり消え去ってるんじゃなくて、ちゃんと実行されてんだろう
book_nameに値が入ってないんじゃね
76:nobodyさん
08/04/13 19:58:27
テンプレートに{debug}ってして、中身見てみたら?
多分>>75が言うように値入ってないと思うけど。
77:nobodyさん
08/04/22 23:30:49
ZFわかんなくて、CakeやってからZFに手出したら
すげーZF好きになった。
ZFの方が記述が納得しやすいと思う。
78:nobodyさん
08/04/23 00:19:31
例えばどんなとこよ?
79:nobodyさん
08/04/23 00:22:18
ZFがいいんじゃなくてCakeが腐ってるだけだろ
特にとんがった工夫も特徴もない標準的な実装がZF
80:nobodyさん
08/04/23 11:57:54
pearからのいいとこどりだしね
81:nobodyさん
08/04/23 20:59:08
そのうち、PHPにビルトインされるだろう。
と思ってたら本当にやりやがった。
マジかよw
な事になると思うよ。
Zendはいつもそうだもの。
82:nobodyさん
08/04/23 21:23:45
と思ってたら本当にやりやがった。
マジかよw
83:nobodyさん
08/04/26 02:06:01 5isAEf4O
Zend Frameworkでセッション使ったら、画面が真っ白になりました。
なんででしょう?
84:nobodyさん
08/04/26 02:15:12
まだFW使うレベルじゃないと思われ
85:nobodyさん
08/04/26 03:22:30
頓知クイズの類じゃないのか。
86:nobodyさん
08/04/26 03:46:35 faNVTaZi
new Zend_Date();
とすると、Zend_Date_Exceptionが1018行目から飛んできます。
第一引数に以下のような配列を渡すと正常にインスタンスが生成できます。
(※定数START_TMEの中身はtime()の戻り値です)
$dateArr = array(
'year' => date("Y", START_TIME),
'month' => date("m", START_TIME),
'day' => date("d", START_TIME),
'hour' => date("H", START_TIME),
'minutes' => date("i", START_TIME),
'second' => date("s", START_TIME));
Zend_Dateの199行目の以下のメソッドの戻り値がタイムスタンプでるので、
その後の処理で例外が飛んでいるのは何となく分かりました。
(以下の後にコールされるsetTimeZone()の中で、timezone_open($zone)で$zoneがintのタイムスタンプなのでこけているようです。)
$zone = $this->getTimezoneFromString($date);
リファレンスによると、引数なしでコールした場合は、
勝手に'now'なインスタンスが生成されるようなのですが、
同じような現象が起こった方はいらっしゃいますでしょうか。。
Zend_Dateのバージョン記述は以下です。
@version $Id: Date.php 8943 2008-03-20 21:43:37Z thomas $
これって既知のバグなのでしょうか。
それともこちらの何がしかの設定の問題なのでしょうか。。
事前にdate_default_timezone_set('Asia/Tokyo');は行っています。
87:nobodyさん
08/04/26 04:05:06
再現するコード出してみてくれ
88:86
08/04/26 04:41:19
>>87
こんなです。
<?php
define('START_TIME', time());
define('START_DATE', date("Y/m/d H:i:s", START_TIME));
define('APP_ROOT_DIR', dirname(dirname(dirname(__FILE__))));
define('DIR_SEP', DIRECTORY_SEPARATOR);
define('APP_LIB_DIR', APP_ROOT_DIR . DIR_SEP . 'library');
error_reporting(E_ALL);
set_include_path(APP_LIB_DIR . PATH_SEPARATOR . get_include_path());
date_default_timezone_set('Asia/Tokyo');
require_once 'Zend/Loader.php';
Zend_Loader::registerAutoload();
set_error_handler(array('My_ErrorHandler', 'userErrorHandler'));
$date = new Zend_Date();
89:86
08/04/26 04:43:14
>>88
今気がつきましたが、set_error_handlerの前でnew Zend_Date()だと、例外が飛んできません(正常にインスタンス生成できる)
90:nobodyさん
08/04/26 04:48:52
set_error_handlerの第二引数何それ?
91:86
08/04/26 04:53:47
>>90
第一引数の配列の要素[0]がクラス名で、要素[1]がメソッド名です。
第二引数は指定していません。
92:86
08/04/26 05:24:31
>>91
すみません。自己解決しました。
初めの説明がちょっとおかしかったりしてるので補足します。
Zend_DateObjectの1016行目で、(ここ最初にちゃんといえてなかったです)
if (!@timezone_open($zone)) {
となっていますが、このZend_Dateのコンストラクタの第一引数がnullだと、
上記の$zoneがintのタイムスタンプで入ってきます。
そうすると、timezone_open()はタイムゾーン文字列が渡されることを期待しているので、
E_WARNINGを発しますが、@で抑制されます。(通常は。)
しかし、独自のエラーハンドラをすべてのエラーレベルに対して設定していて、
そのハンドラの中で@付きのエラー(ハンドラ内でのerror_reporting()の戻り値が0の場合)に対して適切な処理を行っていないと、
本来の@によるエラー抑制は無視され、処理が停止します。
このためnew Zend_Date(パラメータなし)がこけていました。
これは、Zend_Loaderの160行目でもおきます。。
(独自エラーハンドラのせいで@fopen()の@が効かないので)
E_WARNINGに対しても独自のエラーハンドラを適用している場合は、ZFでは色々と気をつけないといけないみたいです。
以上、お騒がせしました。
93:nobodyさん
08/04/26 13:15:49
自前のエラーハンドラ設定するならハンドラ側で
error_reportingのチェックは必須
ZFとかに限ったことじゃないぜ
94:nobodyさん
08/04/26 21:29:22
>>92
Zend_Loaderの160行目の fopenの@は いろいろな問題を引き起こしているわけだけれど、、
さまざまなモジュールとの絡み合っている問題が多くて、どうしたものか悩んでます
URLリンク(framework.zend.com)
95:92
08/04/27 06:13:29
>>94
これじゃだめなんですかね?
自分は↓みたいにしてます。(Zend_Loaderそのものを)
// if (!$fh = @fopen($filename, 'r', true)) {
// return false;
// }
// return true;
add> clearstatcache();
add>
add> if ( is_readable($filename) ) {
add> return true;
add> }
add> $include_path = get_include_path();
add> $path_list = explode(PATH_SEPARATOR, $include_path);
add>
add> foreach ( $path_list as $path ) {
add> $fullpath = $path . DIRECTORY_SEPARATOR . $filename;
add>
add> if ( is_readable($fullpath) ) {
add> return true;
add> break;
add> }
add> }
add> return false;
96:94
08/04/27 16:07:42
>>95
fopenはinclude_pathを考慮してファイル取得できるのに、file_existsはinclude_pathを考慮できないのがデメリットなのだそうです
97:nobodyさん
08/04/28 10:22:32 zm3zzhzx
マヌアルでプリント用のページ出力してくれ
98:nobodyさん
08/04/30 13:59:47
数字で始まるActionって使えますか?
URLリンク(FQDN)
Actionメソッドの定義の仕方がわからない・・・orz
99:nobodyさん
08/04/30 14:48:12
idという意味でもなくて単に数字のURLにしたいなら
actionメソッド名は適当につけてroutingで変えればいい
100:nobodyさん
08/04/30 17:55:35
Zend_Db_Statement::fetch() の offset指定が動作しないのは仕様なのか・・・?
アダプタはPdo_Pgsql。
101:nobodyさん
08/04/30 18:12:00
中身見てみれば?
102:nobodyさん
08/04/30 18:27:25
中身見たんだけど、原因が特定出来ないんよ。
Zend_Db_Statement_Pdo::fetch() が、 PDOStatement::fetch() のラッパーになっていて、
PDOStatement::fetch()のリファレンスには
「スクロール可能なカーソルの場合にoffset指定が扱える」的な事が書かれているのです。
スクロール可能なカーソルを要求するには、
PDOStatement::prepare() の時点でdriver_optionsを渡す必要があるっぽいのですが、
Zend_Db_Adapter::prepare() 経由でdriver_optionsを渡す事が出来なくて・・・
結果的にoffsetが使えなくなってるのかなと、思った次第。
うーん・・・
103:nobodyさん
08/04/30 18:57:56
もしかしてPDOのこのバグが修正されてないとかですか('A`
URLリンク(bugs.php.net)
104:nobodyさん
08/05/01 10:57:14
When using PDO for simple query for PostgreSQL(8.0.3) and MySQL(5.0.18)
cannot acquire it though I want to acquire the offset of the specified
cursor.
and, fetch() is next offset acquired when acquiring it.
ってかいてあるね。
105:nobodyさん
08/05/01 19:46:46
なんかドコモとかauの最初や最後に.や.が連続するRFC違反のメールアドレスに対応するために
Zend/Validate/EmailAddress.php
の216のatextに\x2eを追加したらOKだが、本末転倒か。
106:nobodyさん
08/05/01 20:30:50
ルール違反を甘やかしてはいけない
107:nobodyさん
08/05/02 17:39:15
そんなもん弾いてしまえ
108:nobodyさん
08/05/02 23:15:40
一週間いじってみたがこんな致命的バグの潜んだFWは使う気になれん
109:nobodyさん
08/05/03 00:45:54
せめて致命的バグを挙げてから言ってくれ
110:nobodyさん
08/05/03 13:53:26 K4MBJC9r
Zend Frameworkってセーフモードで動きますん?
CGIモードで動きますん?
111:nobodyさん
08/05/03 14:10:15
動きますん
112:nobodyさん
08/05/04 00:13:53 didjFSw2
そうなぬん?
113:nobodyさん
08/05/04 07:48:44
Zend_Db::query($sql, $param);
を使った時に、
プレースホルダに入れる値をクォートしたくないんだけど、
Zend_Db_Expr型にしてもクォートされてしまうのは仕様?
回避策はある?
例)
$param => array('param' => new Zend_Db_Expr('true'));
$db->query("SELECT * FROM hoge WHERE :param", $param);
生成されるクエリ
SELECT * FROM hoge WHERE 'true';
期待するクエリ
SELECT * FROM hoge WHERE true;
114:nobodyさん
08/05/04 17:48:43
クォートしたくないならプレースホルダ使わない。
Zend_Dbのプレースホルダは確か、プレースホルダに対応して無いDBでも
プレースホルダがあるかのごとく使えるように作られてるから、
その関係でクォート掛かるんじゃないかな。
115:nobodyさん
08/05/07 03:55:17
プレースホルダ対応してないDBって何があるの?
116:nobodyさん
08/05/07 05:02:51
対応云々じゃなくいろんなDBを適当に同じ文法に押し込んだ結果
117:nobodyさん
08/05/07 14:14:51
viewにphp書くとき、ショートタグ使ってる?
<?php echo $this->layout()->content ?>
これだとなんか綺麗じゃないんだよね
ショートタグあんまり使いたくないけど。
118:nobodyさん
08/05/07 17:30:34
smarty使ってる
119:nobodyさん
08/05/07 17:39:51
smartyなんて乞食が使うもの
120:nobodyさん
08/05/07 20:36:27
乞食ってw
smartyっていうかテンプレートエンジンあんまり使いたくない
121:nobodyさん
08/05/07 20:55:26
なぜに?
122:nobodyさん
08/05/07 21:26:31
テンプレートエンジン使ったら負けだ
123:nobodyさん
08/05/07 23:39:38
そう思っていた時期が僕にもありました。
Smarty使って2、3回仕事をこなせば、もうSmarty無しでは生きられない体になるぜ。
今ではテンプレートエンジン否定派は、ただの初心者にしか思えないww
124:nobodyさん
08/05/07 23:58:04
ethnaでsmarty使ったら便利だったけどね。
なんとなくだ。
125:nobodyさん
08/05/08 00:05:51
Smartyも好きなんだけど、結局Zend_View拡張して使ってる
126:nobodyさん
08/05/08 00:30:38
マクロ作っといてボタン押すだけ。
<php echo $hoge; ?>とか一々毎回同じ様な事を長く書くのが嫌なんだろうけど
同じ様な事を書くって事は、自動化できるっつー事でもある。
127:nobodyさん
08/05/08 01:53:40
>>123
禿道
それ以前にクラスとか使うのを躊躇ってた時期がありました
128:nobodyさん
08/05/08 08:15:42
>>126
マクロで自動化とか初心者の発想すぎるだろw
「やっぱり使えねぇわw」とあざ笑う目的でもいいから、一度Smartyあたり使ってみなされ。
デメリットは、学習コストくらいだよ。
129:nobodyさん
08/05/08 10:11:06
こちらでどうぞ
【PHP】 Smarty 隔離スレ 【テンプレート】
スレリンク(php板)
130:nobodyさん
08/05/08 14:36:40
bootstrapってindex.phpのこと?
index.phpに
require '../application/bootstrap.php'
ってのを見かけるんだけど、DocumentRootから見えないようにしてるだけでindexに書いても同じこと?
131:nobodyさん
08/05/08 14:52:24
>>130
ですね
132:nobodyさん
08/05/08 18:42:27
>>130
applicationrディレクトリ内で全ての処理を完結出来る。
bootstrap.phpを基点にファイルパスを管理しておけば、
設置場所が変わったときに最小限の修正で済む。
というのがメリットなんじゃないかな。
133:nobodyさん
08/05/08 23:32:34 936RkXZF
Smartyのページキャッシュ使いたくないの?
134:nobodyさん
08/05/08 23:33:19
ルーターが多機能なのはわかるんだけども、直感的とは程遠いなぁ・・・
そんなトリッキーなルーティングなんてする人少ないんだから、
FWとしては解りやすくシンプルな実装でいい気がする。
135:nobodyさん
08/05/08 23:53:15
別に言う程Routerややこしくない
Routerのモジュール機能は使わなくて良い
RouteのStaticとRegexも使わなくて良い
136:nobodyさん
08/05/09 09:21:36
>>133
意味不明。
137:nobodyさん
08/05/09 16:00:24
Zend_Layoutの $this->layout()->content とか $this->layout->navの使い方がよくわからないんだけど、
navとかってどこで定義されてるの?
138:nobodyさん
08/05/09 16:18:50
>>137
Zend_Layoutの中身を見ればよかろう
139:nobodyさん
08/05/09 16:20:48
>>138
navとかcontentとか探したけど見つからないのよ
140:137
08/05/09 16:37:49
ん?
最初からあるのはcontentだけで、navとかsidebarとかはコントローラーで
$response = $this->getResponse();
$response->insert('sidebar', $this->view->render('sidebar.phtml'));
とかしないといけないのか?
141:nobodyさん
08/05/09 16:38:17
function __get() {
みたいなところ見てみたら?
多分そこらへん
142:nobodyさん
08/05/10 13:15:55 vET5c+ho
すみません、質問です
ZendFrameworkに最近興味をもったんですが、これを使ってできるというPDFの出力は
・完全に日本語対応していますか?
・背景(テンプレートのJPGとか)と表(プログラムに応じて出力)を組み合わせて
書き出すことはできますか?
・どこかの企業のロゴが刷り込まれたりしませんか?
以上3点について教えて欲しいです
もしこの機能を使っている方がいたら、困ってる点などあれば教えてください。
自分でも調べたんですが、本自体少ないし良くわかりませんでした お願いします
143:nobodyさん
08/05/10 13:26:04
>>142
ZendFreamwork1.5で日本語対応しました
言ってることはたぶん実現できるはずです
どこかの企業ロゴが云々のことは知りません
でもそんなの出てたら誰も使わないよねw
144:nobodyさん
08/05/10 13:29:59 vET5c+ho
>>143
おお、お返事ありがとうございます すごく使いたくなりましたw
pearでPDF書き出す機能があって使おうと思ってたんですが、
そのモジュール作った企業のロゴが入って参ってたんです
ほんとにありがとうございました!
145:nobodyさん
08/05/10 13:47:19
編集すればそんなロゴなんて消せるんじゃないか?
146:nobodyさん
08/05/10 16:28:30
今日さむいよ
ゴールデンウィークは30度近くいったと思ったら。
147:nobodyさん
08/05/11 02:21:42
ホントなんでこんな寒いの。。
しかし久々にさわったらまた随分ポリシー変わったね。毎回思うが。
>132
開発している内にindex.php上のbootstrapの記述が結局数十行とかになって、
超・汚くなるし危ないんだよね。
それに対応するbootstrap.phpが推奨になるまで2年(もっと?)か。。。
148:nobodyさん
08/05/13 05:09:01
1ヶ月使った感想。
シンプルな実装なので基底クラス郡としては強力だが、制作効率に反映されるまで時間がかかる印象。
フレームワークを実装する為のフレームワーク/ライブラリ郡って感じかねぇ・・・
現時点ではマルチバイト系全般の処理が甘いのが痛い。
総評:今後に期待。コーディングスタイルは好みなので支持して行きたい。
149:nobodyさん
08/05/13 12:21:40
マルチバイト処理ってvalidateぐらいじゃね?
150:nobodyさん
08/05/13 21:26:22
MailとFilterとか
151:nobodyさん
08/05/13 21:38:51
俺もバリデータを拡張すれば良いんだろうと思ってやろうとしたけど
やり方がわからねぇ。
validateインクルードしないでmb関数直接書く。
全部のクラスに凄い親切にコメント書かれまくってるけど、
書かれすぎてて読みきれない。
コードの2,3倍コメントある気がする。
152:nobodyさん
08/05/13 23:21:24
バリデータを拡張って既存の奴の組み合わせでは不可能な時の独自バリデートってこと?
マニュアルとコード見ても分かんないの?
153:nobodyさん
08/05/13 23:25:50
カスタマイズ性のためにしょうもないところで
複雑になってたり設定が多かったり
ラッパーやビルトインの上書きを書いてる時点で
なんかしんどくなってくるねZFは
色々できるのは有り難いけど
デフォルトで一通り全部フルスタックな状態にしておいてくれて
そこからカスタマイズしたいやつは
デフォルトを取り除いてカスタマイズしていく形にして欲しいよ
デフォルトではとりあえず色々なもん自前で乗せてかないと
そこかしこで何かしら足りないっつーのは面倒過ぎる
エラーハンドラプラグインがデフォルトでついてるのに
そのエラーハンドラは自前で書かなきゃエラーをハンドルしないのかよ
おまえはどんだけツンデレなんだとしばき倒したい
マシューちゃんもうZend_Controllerはオナニーの域だよ
素直に作ってくれよあんた綺麗なコード書くんだからさ
全土フレームワークのコードは大好きだけど
実用的さの欠けっぷりは半端ないよ
ここを見てるPHPのエロい人がいたらそう伝えてよ
僕はこのオナニーコードの断片で昇天して
にちゃんねるに便所の落書きする事くらいしかできないよ
I love Zend Framwork!! I love PHP!!
154:nobodyさん
08/05/13 23:36:00
こんなコードがきれいって言うなら
俺のコード見たらお漏らしするな
155:nobodyさん
08/05/14 01:27:35
>>153
デフォルトでフル装備しててイランものを後から取り除くのも面倒でね?
でもジェネレータみたいなのは欲しいな
156:nobodyさん
08/05/14 07:43:09
>>154
見せて
157:nobodyさん
08/05/14 17:07:05 fprIBGJx
print "HELLO WORLD";
158:nobodyさん
08/05/14 18:48:31 /iZUMp8N
>>157
死んだほうがいい
159:nobodyさん
08/05/14 22:46:18
>>153
同意。
Zend_Dbの足りなさ過ぎにはずっこけたというかPDOで十分というか中途半端なPDOラッパーなぞいらん。
160:nobodyさん
08/05/14 23:20:22
ORマッパーってZend_Db_Tableなの?
161:nobodyさん
08/05/14 23:55:26
ORMっぽいORMは無い
162:nobodyさん
08/05/14 23:58:10
SQLを書けってことか
163:nobodyさん
08/05/15 19:02:20
ZActiveRecordの復活はまだですか?
164:nobodyさん
08/05/15 19:14:46
php 5.3.0がlate static bindingsと__callStatic()が
ちゃんと実装されてリリースされたら
ActiveRecordパターンでまともな実装のORMが出ると思う
165:nobodyさん
08/05/15 19:55:57
URLリンク(bugs.php.net)
みたいにごちゃごちゃ言ってねーで、5.0で実装しとけっつー話だわな。
166:nobodyさん
08/05/15 20:29:48
namespaceもそうだな
結局5.0のリリースで見送ったもののツケが回ってきてる感じだな
その辺りとクロージャのパッチさっさと取り入れてくれりゃ
各FWも随分すっきりした実装になりそうなのにな
今のPHPの実装でFW書く人はほんとマゾ過ぎる
167:nobodyさん
08/05/16 11:18:11
self関係はリリースしてしまった以上、直すに直せない状況なんだろうね…
168:nobodyさん
08/05/17 01:41:30
>>167
selfだめなの?
169:nobodyさん
08/05/17 01:58:07
1.5.2 リリース。
170:nobodyさん
08/05/17 03:56:33
どう変わったんだ
171:nobodyさん
08/05/17 13:25:41
しーん
172:nobodyさん
08/05/17 13:28:53
URLリンク(framework.zend.com)
173:nobodyさん
08/05/18 20:51:12
バグフィックスメインか
174:nobodyさん
08/05/21 02:55:52
zendが身売りってどんだけー
175:nobodyさん
08/05/21 05:22:02
身売りしたらこんなオナニーフレームワークは何の意味もなくなる
176:nobodyさん
08/05/21 14:24:36
PHPオタワ
177:nobodyさん
08/05/21 14:31:27 LYIqFUi6
PHP房涙目wwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww
178:nobodyさん
08/05/21 16:30:45
アプリケーション内のHTMLでヘッドとフッターがある程度決まっていて
毎回書くのがめんどくさいです。
なのであらかじめ2つのphtmlファイル(ヘッドとフッター)を用意してページをrenderする前後に呼び出したいのですがどうすればいいでしょうか?
$view = new Zend_View();
echo $view->render("/var/hoge/views/design/top.phtml");
echo $view->render("/var/hoge/views/index/hoge.phtml");
echo $view->render("/var/hoge/views/design/footer.phtml");
こんな書き方でできるかと思ったのですがエラーになります。
179:nobodyさん
08/05/21 20:13:42
zend_layoutで。
180:nobodyさん
08/05/22 00:28:27
まぁ実際身売りしてもzendframework自体はなんもかわらない気がする。
microsoftはやだな。オラクルも
181:nobodyさん
08/05/22 00:38:39
ZFは野に放っても生きていけると思うけど
PHP本体はな……
オープンソースとはいえ、≒Zendな訳でしょ
182:nobodyさん
08/05/22 01:10:22
PHP6 → Microsoft PHP.NET
Zend時代よりも大幅な開発力アップになったりしてw
183:nobodyさん
08/05/22 01:20:40
CLI上でgoto実装された言語二つ目になる訳ですね、判ります。
184:nobodyさん
08/05/22 01:22:23
どうせ買われるのならRasmusがいるYahoo!の方がいいなw
185:nobodyさん
08/05/22 01:26:46
>>181
「Zend公式」という強みしかない糞FWが生き残るわけねーじゃん
「Zend公式」の印籠をもってしてもメインストリームになってないし
186:nobodyさん
08/05/22 01:35:43
公式ゆえの弱み(or臆病さ)だろうね
ヘタに主流作れないのでフレームワークのためのフレームワーク的なモンしか提案できない
言語本体から切り離した地盤固めの試みなんじゃねえの
187:nobodyさん
08/05/22 01:51:36
Zend自体ブランド力も開発力も乏しいんだから、
PHP&ZendFrameworkごとMSとかに買収された方がPHPの発展になるんじゃねーの?
Visual PHP.net とか普通に期待しちゃう。
188:nobodyさん
08/05/22 01:56:06
msが買ったらlinuxで動かなくなるじゃん
そしたら事実上脂肪
189:nobodyさん
08/05/22 01:56:49
>>184
元ネタによるとyahooに買われても、いきつく先はMSだけどなw
URLリンク(jp.techcrunch.com)
190:nobodyさん
08/05/22 03:19:12
>>189
どうせならyahooがいいけど、MSに買われたら意味ないしなぁw
じゃあSun?
191:nobodyさん
08/05/22 03:20:08
yahooがgoogleと組めばいいんだ
googleはpythonだろうけど
192:nobodyさん
08/05/22 03:25:14
珍しく伸びるな
193:nobodyさん
08/05/22 03:41:32
IBMもSunも脛に傷あるような企業だからなぁw
194:nobodyさん
08/05/22 06:49:57
有り余る金でgoogleが買ってくれたら
みんなが幸せになるとは思うけどな
195:nobodyさん
08/05/22 10:41:11
>>191
>>194
PythonとPHPが統合されたら強力なツールになりますね
196:nobodyさん
08/05/22 17:25:29
pythonとphpでパイビーですね
197:nobodyさん
08/05/22 17:25:59
パイエッチにするとさらに卑猥
198:nobodyさん
08/05/22 19:55:35 3xiPTBYp
モジュールを以下の形式のようにネストする事は可能ですか?
/module1/module2/controller/action/
setControllerDirectory()ではモジュール名に対してコントローラディレクトリを指定すると思うので、
ネストする場合には
"module1"=>"/path/to/controller"
とするしかできないと思います。
ちなみに無謀なチャレンジをしてみましたが
"module1/module2"=>"/path/to/controller"
Module2Controllerを読もうとしてエラーになってしまったようです。
当方女子高生です。
よろしくお願いします。
199:nobodyさん
08/05/22 20:44:04
上場企業社員ですが、モジュールをネストする意味がわかりません。
200:nobodyさん
08/05/22 21:35:28
>>198
無職だけど、モジュール自体をネストしなくても
/foo/bar/:controller/:action で module1 のディレクトリに対してマッピングすれば良い
Routerのモジュール機能でどうこうするよりも
routerのマッピングを変えた方がわかりやすいし変更も楽
201:nobodyさん
08/05/22 21:56:47
本気でモジュールをネストする意味がわかりません。
202:nobodyさん
08/05/23 00:08:35
>>199
上場企業社員とかいらんだろw
203:nobodyさん
08/05/23 00:56:14
上場企業下請け派遣社員ですが彼女がいません。
204:198
08/05/23 02:08:23
すいません。言い方が悪かったみたいです。
モジュールをネストする必要と言うよりは、
クライアントからのパスの指定があったからという理由です。
マッピングを設定できるというのは知りませんでした。
>>200の方のいうようにやってみたいと思います。
どうもありがとうございました。
実は女子高生と言うのは釣りです。
どうもすいませんでした。
205:nobodyさん
08/05/23 03:07:53
URIを好きなように設定したい!
↓
モジュールをネストしよう!
って発想になるのがなかなかエクセレントだな。
206:nobodyさん
08/05/23 03:08:05
なんだと
207:nobodyさん
08/05/23 03:32:17
女子高生ワロタwww
208:nobodyさん
08/05/23 04:03:46
「女子高生」で釣られるわけねーだろヴォケ
209:nobodyさん
08/05/23 04:19:20
お前ら足下みられすぎワロタ
210:nobodyさん
08/05/23 12:21:01
$this->view->renderで絶対パスを指定するとエラーになります。
相対パスだと意図したとおり表示されますが、汎用性が低くなってしまいます。
define('ROOT_DIR',dirname(dirname(__FILE__))."/");
$this->view->render(ROOT_DIR."apps/layouts/template.phtml");
エラーになる
何かいい方法はないでしょうか?
211:nobodyさん
08/05/23 12:39:44
echo ROOT_DIR."apps/layouts/template.phtml";
212:nobodyさん
08/05/23 12:49:52
>>210
テンプレートがまとまって入っているスクリプトパスを
viewに設定してそのスクリプトパスからの相対パスを指定して
テンプレートを読み込んで使うっていうものだから
絶対パスで扱えないから汎用性が低いってのはちょっと違和感が
まあ例外的に絶対パスで指定したい時もあるし
絶対パスでそのまま扱えるオプションやメソッドがあってもいいとは思うよ
(railsのactionviewにもそういうオプションはある)
それはZend_View_Abstractを継承するなりして
それ用のメソッドなりオプションを用意してやれば良いと思う
213:210
08/05/23 14:49:52
>>212さん
>テンプレートがまとまって入っているスクリプトパスをviewに設定してそのスクリプトパスからの相対パス
たとえば以下のように設定して
Zend_layout::startMvc(array('layoutPath'=>'/apps/layouts'));
/apps/layoutsからの相対パスで設定可能なら管理上、便利なのですが、(個人的に、ですが)
setControllerDirectory('apps/controllers')
で設定したファイルパスからの相対パスのようです。
レイアウトはレイアウトで管理したいのでなんか気持ち悪いです。
'layoutPath'で管理する方法はないでしょうか?
214:nobodyさん
08/05/23 19:15:50
Zend_Layoutは使ったことないので何ともいえないけど、
そのlayoutPathで指定してる '/apps/layouts' っていう
絶対パスはちゃんと合ってる?ルート直下になってるけど
そのlayoutPathから相対で指定できなかったら
個人的にも何もlayoutPath設定してる意味がないと思うんだけど、、、
少なくともcontroller directoryからの相対指定ってのは明らかにおかしいし
自分なら何か設定が間違ってると考えるけど
215:nobodyさん
08/05/23 22:57:34
完璧な仕事しやがって・・・
216:nobodyさん
08/05/24 01:21:29
次のバージョンは1.6ですよ
217:nobodyさん
08/05/27 00:22:51
出力前にビューと変数全体の文字コードを変えたいのですが、どんな方法があるでしょうか?
smartyでいうところのprefilterみたいな機能です。
218:nobodyさん
08/05/27 11:53:14
URLのカスタマイズは可能でしょうか?
example.com/index/hoge/id/12345/
だと長すぎるので
example.com/id12345/
や
example.com/12345/
でできればと思います。
内部的に第二パラメータ(id([0-9]+),([0-9]+))がある場合は
index/hoge/id/12345/として扱うようにしたいのです。
219:nobodyさん
08/05/27 12:22:10
つ rewrite rule
220:nobodyさん
08/05/27 12:25:14
routerじゃないのか?
221:nobodyさん
08/05/27 13:01:28
ZF的にはrouterが正攻法だろうね。
個人的にrouterは冗長で読みにくいので、標準のルーティング以外はmod_rewriteを使っている。
>>218
普通にやればスンナリ出来る事なのに、
詳細を調べないと実現出来ないような実装な時点で、router使うやつはただのマゾ。
222:nobodyさん
08/05/27 13:26:50
こういう場合って router 使うのね。
俺はErrorControllerいじって実装してたわ。
223:217
08/05/27 17:42:54
出力ファイルの文字コードのみ変換したいのですができないでしょうか?
これができないと携帯用の出力ができません、、、
Zend Frameworkでは携帯サイトは作れないですか?
お願いいたしますm(_ _)m
224:nobodyさん
08/05/27 18:04:06
ZendFrameworkにその機能が無いなら、拡張実装すればいいだけじゃないの?
自分はSmarty+ZFで対応してるけど。
>>出力ファイルの文字コードのみ変換したいのですができないでしょうか?
ZFのView実装見てないから何とも言えないけど、ob_start()でバッファリングして、最後に一括変換すればいけない?
225:nobodyさん
08/05/28 15:54:55 GUHYGw3g
RewriteRouter使えば簡単だよ
226:nobodyさん
08/05/28 19:28:44
ていうかFW使っててRouterすらまともに使えない奴ってなんなのwww
227:nobodyさん
08/05/28 19:34:29
なんのためのFWだって話だww
228:nobodyさん
08/05/28 22:32:55
ZFに限って言えば、Router使う奴はマゾとしか思えない。
記述と動作が追いにくいので、FWの利点である「FWを知っていれば、他人のコードも理解しやすい」というメリットが薄い上に、
シンプルな動作を実装するのに、複雑なコードが必要になるとかww
229:nobodyさん
08/05/28 22:41:53
Routerから追わないといけない必要に駆られる時点でいろいろ間違ってる
230:nobodyさん
08/05/29 01:54:23
Routerに限らず、ZFをどこまで信用できるかandどこまで
ZFの想定に近いことをやろうとしているかの見極めどころの話だな
231:nobodyさん
08/05/29 02:03:36
routerつかわない人って
未だにだっさいURLなの?
232:nobodyさん
08/05/29 02:29:11
URLなんてRouter以外でどーにでもなる。
routerの冗長でだっさいコーディングに疑問を持たない人ってなんなの?
233:nobodyさん
08/05/29 02:32:27
mod_rewriteで解決ですかww
234:nobodyさん
08/05/29 02:40:47
>>233の知識が乏しいのだけは解った。
235:nobodyさん
08/05/29 02:57:54
ほーう
では他にどんなソリューションがあるのか教えて頂けますか?
物知りさん
236:nobodyさん
08/05/29 13:26:28
mod_rewriteでって言ってる人がいるけど
それってデフォルトのルーティング以外のを
デフォルトルーティングに沿うように変換するってこと?
それは明らかに無駄だし、Router無しだと
アクションからURLを解決するような逆変換もできない
URLをどうこうだけじゃなく
URLとコントローラをマッピングすることがRouterの役目
Routerの設定が冗長ってのも微妙
実際のところRewriteRouterを使って
デフォルトルーティング以外を追加するくらいのもんだと思うんだけど
あれで冗長ならRouter的な概念を持つもの何も使えないんじゃない?
設定が冗長だと感じるならsymfonyみたいに
マッピングをyamlで設定できるようにラップするといい
まあそれでも冗長と感じてよりシンプルな方法があるなら
俺も正直教えて欲しい
237:nobodyさん
08/05/29 13:32:19
Routerで /ctrl/action/param/param/param/ ...
とするための設定教えちくりくり
238:nobodyさん
08/05/29 13:40:21
>>237
URLリンク(framework.zend.com)
239:nobodyさん
08/05/29 20:54:43
>>236
まったくだ
往復で変換できなきゃ意味ないよな
240:nobodyさん
08/06/01 07:16:58
ルーターでデフォルトモジュール名を省略する事って可能ですか?
以下のように、設定したいのですがどう書いてよいのやら・・・
/test → IndexController::TestAction();
/test/ → TestController::IndexAction();
241:nobodyさん
08/06/02 01:35:52 dJEt55md
可能
242:nobodyさん
08/06/02 03:02:39
>>241
教えてエロイ人
243:nobodyさん
08/06/02 03:05:27
デフォルトactionを設定したらいいんじゃね
zend使ったことないからしらんけど
244:nobodyさん
08/06/02 03:33:35
>>243
デフォルトでは
/module
/module/
/module/action
と認識されてしまうんですよ。
これを
/action
/module/
/module/action
と設定したいのですお。
245:nobodyさん
08/06/02 03:40:15
それは個別にルータに指定しなきゃだめだろう
/hoge
と指定した時に
/default/hoge
に変換する等、ひとつひとつ設定するのが普通
246:nobodyさん
08/06/02 03:45:27
なるほど個別設定は試してなかったので、試してみます。
247:nobodyさん
08/06/12 14:02:23 Mes6XuGv
Zend_Http_Responseのfactoryメソッドってどこにあるの?
248:nobodyさん
08/06/13 18:48:28 /Epk/r4F
Zend_Http_Responseのfactoryメソッドってどこにあるの?
249:nobodyさん
08/06/13 19:54:57
ここではないどこかだよ馬鹿野郎
250:nobodyさん
08/06/13 20:12:31
分かんないんならレスしないでくれる?
251:nobodyさん
08/06/14 04:30:28
「factoryメソッドはある」と認識してるのに、どこにあるかワカラナイとか意味がわからない。
なぜ「ある」と思ったんだい?
252:nobodyさん
08/06/14 04:37:28
だよな
そもそもfactoryパターンの意味も分かってないっぽい
253:nobodyさん
08/06/14 04:46:12
もしやソースのファイル名と行を聞いているのでは
Grepすりゃ一発だろって話だが
254:nobodyさん
08/06/14 11:33:00
質問です。標準のルーターだと
/default/index/index
/index/index
/index
/
全部同じアクションが呼ばれますよね。
SEO的に良くなかったり相対パスで書いた画像が表示できなかったりするから、
どれか一つ以外のもの (この場合は/) 以外はリダイレクトさせるか、404にしたいのですが、
そんなことできますか?
255:nobodyさん
08/06/14 12:18:09
$front->getRouter()->removeDefaultRoutes();
256:nobodyさん
08/06/15 01:23:44
>>255
どもです。しかしそれだと、/が使えなくなって index/index と書かなくちゃいけなくなるんじゃないですか?
逆が良いのですが。
257:nobodyさん
08/06/15 01:59:21
だったらそう設定すればいいだろう。
258:nobodyさん
08/06/15 02:13:16
removeDefaultRoutes()してから、
/ に index/index を当てればいい。
index/indexなんてかっこわるいのはイラン
259:nobodyさん
08/06/15 21:57:49
普通DefaultRoutesは消さんだろ
なんのためのデフォルトなのか考えろ
>>254
不要なURLをリダイレクト or 404用のアクションにマッピングするだけ
260:nobodyさん
08/06/17 02:33:00
やっぱりみんなルーターの扱いがよくわからないよね
>>259もいってる通りリダイレクトなんかが一番楽なのかもね
ただGETで変数渡したい時だけルーティングしたいような気もする
261:nobodyさん
08/06/25 12:10:06
連鯖がドキュメントルート同階層にディレクトリが作れないもんで、ZFのライブラリをドキュメントルート以下に配置するしか方法がないんだけど、こういう場合ってcgi-binに配置した方がいいかな? それか適当なディレクトリに入れてアクセス制限かける方がいいかな?
262:nobodyさん
08/06/25 12:13:09
なんでcgi-binww
263:nobodyさん
08/06/25 15:10:01
warosu
264:nobodyさん
08/06/29 09:04:08
Zend_Authとか使ってる人いる?
設計思想はわからんでもないが、そのままじゃ使えない上に、カスタマイズが面倒で、独自実装する方が早い気がしてならない。
使った場合のメリットを教えてエライ人。
265:nobodyさん
08/06/29 10:01:33
俺はそれよりもZend_Aclのメリットがわからんですたい
266:nobodyさん
08/06/29 14:15:24
>>264->>265
AuthもAclもセットで使ってる
メリットは単純だし実装が楽だから
カスタマイズってそんなにするところあるの?
267:nobodyさん
08/06/29 19:48:09
公式のサンプルやネットに転がってるサンプルだと、
単純で実装が楽ってのが実感出来ないなぁ・・・
機能としては単純なのに、少々冗長で、覚える事が多いなぁ・・・と感じてしまう。
268:nobodyさん
08/06/29 20:05:20
じゃ実際に使って確かめろよ頭悪いの?
269:nobodyさん
08/06/29 20:55:07
使うに至るものなのかって質問が理解出来ない程頭悪いの?
270:nobodyさん
08/06/29 22:15:27
それを判断する最短解は、簡単なサンプルで使ってみるこったろ
Acl/Auth程度、他人(それも2chの名無し)に良い悪い論せたところで遠回りよ
俺の私見では、汎用性整えつつ最低限の道具であろうとしたらこうなるね、という感じだ
俺がこう述べたところで君がそうかと判断するのは早計だ
何人か反論してきて初めて判断基準としての価値があるだろうな
その間にざっくり試して判断すりゃ30分も掛からんだろうよ
271:nobodyさん
08/06/29 23:05:45
>>269
サンプルで実感できないかつ実際にも使う気がしない面倒臭がりなら使わなきゃいいだろ何のためにこのスレにいるの
ケチだけつけて何がしたいの?ネガキャン?つかむしろなんのために生きてるの
272:nobodyさん
08/06/29 23:10:33
まぁそりゃそうだが・・・
汎用性とのトレードオフなんだろうけど、
Authは機能の割に実装量と学習コストが高いと感じたのさ。
率先して使う価値はあるのかなと。恩恵はあるのかなと。
チーム内のコード共有の為にZFを導入した経緯もあるので、
他の人の意見を聞きつつ、使うか避けるかを判断したいんです。
273:nobodyさん
08/06/29 23:14:49
>>271
そうムキになるなよw
他のコンポーネントは使ってるし、ZFは重宝してるよ。
274:nobodyさん
08/06/30 02:36:42
>>271
何か嫌なことでもあったのww