Zend Framework Part5
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2011/02/11(金) 04:04:29ID:???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 Part4
http://hibari.2ch.net/test/read.cgi/php/1265721684/
0231nobodyさん
2011/06/23(木) 07:17:38.50ID:???0233nobodyさん
2011/06/23(木) 09:20:46.13ID:???特にWeb系は
例えハードが進化したとしてもコードを出来るだけ小さくしよう、軽くしようと努力するのは当然
アクセスがデカくなればなるほど少しでも小さくしなければ
>>228-230こそ小さな案件しかしていないことが分かる
0234nobodyさん
2011/06/23(木) 09:56:28.70ID:???0235nobodyさん
2011/06/23(木) 10:06:11.73ID:???いろいろ削ってみたものを下記に置いてるので、試してみて
http://ramat.ram.ne.jp/
0236nobodyさん
2011/06/23(木) 10:08:56.45ID:???何使ったらZFより遥かに100MB単位で小さくなんの?
0237nobodyさん
2011/06/23(木) 10:30:46.91ID:???0238nobodyさん
2011/06/23(木) 10:44:11.36ID:???0239nobodyさん
2011/06/23(木) 14:58:51.33ID:???0240nobodyさん
2011/06/24(金) 01:46:15.51ID:rVNWaX5H容量を聞いてくる顧客とか会ったこと無いわ
0241nobodyさん
2011/06/25(土) 17:15:35.10ID:???なぜゼンドで作ってるのかすらり買いしてなさそうだなw
0242nobodyさん
2011/06/30(木) 05:04:52.52ID:AvEAooUw意図したデータがあったかどうかどうやって判定してますか?
$rtn = $db->fetchRow($query); だとして、、
自分は今、 if(is_array($rtn)) echo "該当データあり";
って感じにis_arrayで判定しています。
こんなので良いんでしょうか?
fetchAllの時もあわせて教えてもらえると助かります。お願いします
0243nobodyさん
2011/06/30(木) 09:22:50.21ID:???$rows = $this->fetchAll($query);
if(!is_null($rows)) echo "該当データあり";
0244nobodyさん
2011/06/30(木) 21:42:39.26ID:???0245nobodyさん
2011/06/30(木) 21:50:28.46ID:???0246nobodyさん
2011/07/02(土) 06:30:32.96ID:zLDecbT7$tr = new Zend_Mail_Transport_Smtp('[email protected]');とか
$tr = new Zend_Mail_Transport_Sendmail('[email protected]');って設定がありますが、
上がsmtpサーバを指定してるのはわかりますが、下がわかりません
-fapacheの部分を何に変えても送信できてるんですが、下の引数は何を指定してるんですか?
0248nobodyさん
2011/07/02(土) 10:35:16.84ID:???Return Path の指定。
0249nobodyさん
2011/07/02(土) 11:15:24.89ID:???それ以外にあなたが使うものってなんですか?
0250nobodyさん
2011/07/02(土) 11:18:45.25ID:???0254nobodyさん
2011/07/02(土) 16:22:44.17ID:???直接は使わないけどね
0255nobodyさん
2011/07/03(日) 16:28:15.22ID:EYOQv7h8Zend_Cloud_QueueService_Adapter_ZendQueue
0256nobodyさん
2011/07/03(日) 21:51:49.81ID:???Zend_Db
Zend_Cache
Zend_Log
Zend_Mail
Zend_Http_Client
よく使う順。
CacheとHttp_Clientは再発明するのがアホらしくなるくらい良くできてる。
0257nobodyさん
2011/07/04(月) 06:47:38.56ID:???俺はZend_ConfigとZend_Sessionもよく使うなー
0258nobodyさん
2011/07/04(月) 13:20:33.29ID:???ちっこい案件ならfile
中規模以上は memchaced, sqlite
どっち使うかは対象の頻度見てチューニング
キャンペーンとかで山ほどアクセスありそうなら
最初からmemcachedとかそんな感じ
0259nobodyさん
2011/07/04(月) 15:27:37.12ID:???なるほどね〜
申し訳ないんだけど、参考までにmemcachedを使う規模のアクセスって
どの程度か教えてくれないですか
月間何万アクセス以上みたいな基準あるのかな、もちろんサーバの性能もあるだろうけど
0260nobodyさん
2011/07/04(月) 15:39:19.17ID:???0261nobodyさん
2011/07/04(月) 17:27:51.77ID:???memcachedサーバー立てる案件なら自然にって感じ
月間アクセス数より瞬間の方が気になるかな
イベント用の登録システムなんかだと
トータルでのアクセス数はたいしたことなくても
瞬間が恐ろしいことになったりするし
あとmemcachedは結構死ぬから
ものによってはsqlite -> memcachedって階層でキャッシュしてる
あんまりやりたくないけど
関数のキャッシュするのも楽なので嬉しい
0262nobodyさん
2011/07/04(月) 20:02:38.88ID:???>基準無し
そうなんですか
階層でキャッシュするというのがよくわかりません
factoryの段階で、sqliteとmemcachedの二通りを用意して、
save();がこけたら代替の方に保存する/引き出し時はその逆の処理ってことですか?
0263nobodyさん
2011/07/04(月) 20:05:55.53ID:???0264nobodyさん
2011/07/04(月) 20:21:16.38ID:???代替から引き出すってこと?
0265nobodyさん
2011/07/04(月) 20:34:02.57ID:???それでもやった方が良いってくらいの高負荷環境限定の処理ってことですよね
なるほど、いろいろ考えさせられるなぁ
0266nobodyさん
2011/07/04(月) 20:35:56.77ID:???ttserver使ってるで知らんかったわ
0267nobodyさん
2011/07/05(火) 12:18:25.57ID:???もしmemcachedサーバーがこけてたらsqliteから読み込むだけ
生成がやたら重たくてキャッシュの効く処理で
しかも大量のリクエストがありそうな場合
キャッシュとしちゃmemcachedが一番だけど
memcachedは落ちることもあるので
フォローにsqlite使ってるって話
生成 -> sqlite と memcached にぶっこむ ってやって
memcachedでヒットしなかったり読み込み失敗したらsqliteで
sqliteでも駄目なら生成ってだけ
特に重たくないよ
0268nobodyさん
2011/07/05(火) 14:24:55.38ID:7nMaxMXk詳しい説明をどうもありがとう
キャッシュというのを考えたことがなく作ってきたんで、今の話凄く興味深いんだけど
関数(とかメソッド、クラス)をキャッシュと、ページ全体をキャッシュの使い分けはどうしたら良いのかな?
たとえばCDの紹介ページを考えると、曲目しか書いてないページならページ全体キャッシュでいいんだと思う。
(曲目なんて変わりようがないから)
でも、「ユーザのレビュー」や「このCDに興味のある人はこちらもおすすめリスト」が同ページに配置してる
構成だとどうしたら良いんでしょうか?
ページ全体をキャッシュするのは諦めて、CDの曲目を引き出す関数と「こちらもおすすめリスト」の関数の
2つをそれぞれ個別のキャッシュ化することになるんですか?
そうして考えると、mixiみたいなSNSや今どきのCMSの構成のサービスでページ全体キャッシュなんてありえるんでしょうか
0269nobodyさん
2011/07/05(火) 15:20:19.35ID:???例えばヘルプだとかFAQだとかトピックスだとかそういう用途に使う
と考えると使い所はそう多く無いように見えるけど
更新頻度にズレのある箇所はAjaxで取得すれば
9割がページキャッシュって事も可能
もちろんAjaxで取得するコンテンツの方も
関数だとかアウトプットだとかの断片的なキャッシュを使っておく
実態は断片的なキャッシュを行って組み合わせたのと大差無い計算量だけど
キャッシュ出来ない部分があってもjsonだので軽量なアウトプットで済むし
内容によっては要求そのものをせずに済むかもしれない
(レビューは「レビューを表示」ボタンが押されたら取得、とかで)
とにかく考慮するのは更新頻度と要求頻度で
CDの例で言えばユーザーレビューがどの程度更新されるのか
どの程度要求されるのかに応じて
どうキャッシュすべきかは全然変わってくる
毎秒更新される情報をキャッシュするのは
ミリ秒で要求が来る場合なんだろうけど
多分俺が関われる程度の機械性能じゃほぼ無意味
キャッシュでサーバーコスト削るのは楽しいよね
0270nobodyさん
2011/07/05(火) 16:25:50.47ID:???やっぱり今はサービス全体のベストエフォートを実現するにはajaxの機能を織り込んで設計しないと全然ダメですね!
jsやphpの本も言語ごとの「こんなことが出来る」って機能の説明だけじゃなくて
「サーバコスト対策」みたいなテーマを揚げて、言語やソフトを横断した本があれば良いのになぁ
>>269さんは何か参考にした本あるんですか?
と、いま考えたらcontrollerを携帯(ガラケー)と共有する場合ajax依存の設計は難しいですね
でもそういうのを考えるのも面白いですね
0271nobodyさん
2011/07/05(火) 17:34:09.84ID:???0272nobodyさん
2011/07/05(火) 17:50:23.50ID:???システムの設計とか運用のだったら
多分そういう本にまだ意識が向いてないから
見つけてないだけじゃないのかな
Amazonで「システム 設計」とかやるだけでぼろぼろ出るし
俺は本苦手なのでほとんどWebです
スマートフォンはまだしも
携帯はせめてコントローラー分けておいた方が良いと思う
必要な最適化はかなり違うし
0273nobodyさん
2011/07/05(火) 18:01:51.56ID:???でも大抵DBチューニングとかサーバ構成なんですよね
>携帯はせめてコントローラー分けておいた方が良いと思う
これは、そうですね。やっぱりまとめるのは無理がある… ありがとうございました
0274nobodyさん
2011/07/05(火) 20:43:25.75ID:???新品は入手しにくいかもしれないけれど、オライリーの
「ハイパフォーマンスWebサイト――高速サイトを実現する14のルール」
はかなりためになるよ。
クライアントサイドの処理最適化とか、ファイルダウンロード順序とか。
0275nobodyさん
2011/07/05(火) 21:04:46.31ID:???zendと全然ズレてる話題続けて申し訳ないんだけど、
こないだmixiのアルバム機能のソース見てみたら凄かったわ
ページ全体の遷移なんてしてなくて、フォームの値だけを送信して
見た目の画面遷移はhtmlのなかにdisplay:none;で隠してるテンプレートを
jqueryで読み込んでシーンを切り替えてるのね。
バリデートも全部jqueryとajaxでやってるんじゃないかと…
使えるライブラリやコンポネントの数増やして満足とか問題外。
フロント側/サーバ側なんて区切りないもの、くじけそうになったw
0276nobodyさん
2011/07/05(火) 21:28:06.32ID:???0277nobodyさん
2011/07/05(火) 21:51:05.77ID:???さすがにbigpipeまでいくとやり過ぎだけど
体感速度の向上って必須になってるし
jquery.templateとか楽でいいんだけど
開発の管理的に面倒な部分も多いよね
素のデザイナも素のプログラマも
どんどん役立たずになってきてて
ほとんど兼任できる人間しか残らなくなってきてる
0278nobodyさん
2011/07/05(火) 23:48:05.84ID:???0280nobodyさん
2011/07/06(水) 17:57:15.87ID:???↓のように書いたのですが、上手くいきません・・・
$frontendOptions = array(
'cached_entity' => new Zend_Service_Amazon(AMAZON_ACCESS_KEY_ID, 'JP', AMAZON_SECRET_ACCESS_KEY)
);
$backendOptions = array(
'cache_dir' => CACHE_DIR
);
$amazon = Zend_Cache::factory('Class', 'File', $frontendOptions, $backendOptions);
$results = $amazon->itemSearch(array('SearchIndex' => 'Books', 'Keywords' => 'PHP'));
2回目以降にアクセスするとエラーがでて止まってしまいます。
この場合、クラスキャッシュは使えないのでしょうか?
0281nobodyさん
2011/07/06(水) 18:51:53.53ID:???0282nobodyさん
2011/07/06(水) 18:53:00.37ID:???まさか5.2以下じゃないよね?
0283280
2011/07/06(水) 19:02:32.25ID:???スミマセン;
Warning (2): DOMXPath::query() [function.DOMXPath-query]: Invalid XPath Context [〜/Zend/Service/Amazon/ResultSet.php, line 89]
いろいろvar_dumpしてみたのですが、原因がわかりません・・・
>>282
バージョンは5.2.4です。
オブジェクトを返すメソッドには対応してないんでしょうかね・・・?
itemLookupならちゃんと動いたんですが・・・
0284nobodyさん
2011/07/06(水) 19:31:48.68ID:???Invalid XPath Context でぐぐってみ。
zend.ze1_compatibility_mode=On にしてるとエラーが出るとかなんとか。
0285280
2011/07/06(水) 20:36:24.56ID:???バグレポートみたいなのがヒットしましたが、いまいちわかりませんね;
1回目(キャッシュなし)だと大丈夫なんですが・・・
0286nobodyさん
2011/07/06(水) 23:45:20.61ID:???2回目以降ってのが謎だね・・・
フロントエンドの automatic_serialization を有効にしても駄目?
0287280
2011/07/07(木) 03:21:59.69ID:???Zend_Cache_Frontend_Classのコンストラクタで自動的に
$this->setOption('automatic_serialization', true);
になってるみたいです。
メソッドの返り値がオブジェクトで、
さらにコンストラクタが呼ばれたりしているので、そこらへんがキャッシュしきれてないんでしょうかね?
0288nobodyさん
2011/07/07(木) 03:46:17.62ID:???挙動とエラー内容から推測すると、
キャッシュは出来てるけどunserializeに失敗してる感じだね・・・
試しに『DOMDocument serializable』でぐぐってみたら、
PHP組み込みのDOMDocumentはserializeableじゃない模様・・・(つA`
Zend_Service_Amazon_ResultSetもserializable実装されていないので、これが原因かも。
0289nobodyさん
2011/07/07(木) 10:00:33.18ID:???復帰に失敗してるんだから、2回目でエラーは正しいんじゃないの?
0290nobodyさん
2011/07/07(木) 23:44:23.28ID:Q2g22JEqENT_QUOTESにしたい場合は、単に/View/Abstract.phpの906行め付近の
function escapeのreturn文をENT_QUOTESに書き換えればいいのでしょうか?
0292nobodyさん
2011/07/08(金) 14:20:44.43ID:???0293nobodyさん
2011/07/10(日) 16:38:13.67ID:???Windows7 64pit とXamppの環境でZendFrameworkを使ってWebアプリを作っています
modrewriteを使用しています
ビュースクリプト内でアプリケーションのベースURLを得たいと思い、
ビュースクリプト内で
echo $this->baseUrl();と言うふうに
ヴューヘルパーのbaseUrl()メソッドを呼び出したのですが返り値が空です
$baseUrl = Zend_Controller_Front::getInstance()->getBaseUrl();
この結果も空です
何がおかしいのか検討が付きません
何方か対策か代替案があったら教えてください。
0294nobodyさん
2011/07/10(日) 17:23:54.44ID:???0295nobodyさん
2011/07/10(日) 17:54:38.36ID:???ZFのバーションは1.11.7です
0296nobodyさん
2011/07/11(月) 18:06:00.05ID:???これが空なのは、baseUrlがRequestオブジェクトの処理後に生成されるからじゃねえの?
ってかControllerだろうがViewだろうがvar_dump()とかprint_r()に突っ込んでみたら?
0297nobodyさん
2011/07/12(火) 16:53:52.49ID:???method="get"のフォームをサブミットしたときのURLはZFがデフォで取得できるパラメーターフォーマットには(当然)ならないんだけど、
method="get"でパラメーターを取得するためには、その都度Regexルーター作らないといけなんでしょうか?
0298nobodyさん
2011/07/12(火) 18:43:36.73ID:???しかし、、、
0299nobodyさん
2011/07/12(火) 21:09:43.74ID:???よくわからんけど、URLクエリの値($_GET)を取得したいなら>>298の方法が一般的。
Zend_Controller_Request_Http->getParam(); // パラメータ or $_POST or $_GETから取得
Zend_Controller_Request_Http->getQuery(); // $_GETから取得
0300nobodyさん
2011/07/13(水) 09:56:08.29ID:???きれいなURLで値を取得をする場合
そもそもデフォルトのルーティングで
ある程度は取れるようになってる
query string の取得は他の人が書いてるように
getQuery(key) や getParam(key)でやるけど
getParam()はパラメーター全てからヒットするものを返すので
見通しも安全性も下がり気味だから避けてる
0301nobodyさん
2011/07/13(水) 20:46:47.65ID:35EarspL今以下のようにルーティング設定してるんですが、これだとアクションが増える度に設定を増やさなきゃ行けなくなります
効率的に書く方法はないでしょうか
;ユーザのhobby a
routes.user_hobby_a.route = "/user/:userName/hobby/aaa/*"
routes.user_hobby_a.defaults.module = "user"
routes.user_hobby_a.defaults.controller = "hobby"
routes.user_hobby_a.defaults.action = "aaa"
routes.user_hobby_a.reqs.userName = "\w+"
routes.user_hobby_a.type = "Zend_Controller_Router_Route"
;ユーザのhobby b
routes.user_hobby_b.route = "/user/:userName/hobby/bbb/*"
routes.user_hobby_b.defaults.module = "user"
routes.user_hobby_b.defaults.controller = "hobby"
routes.user_hobby_b.defaults.action = "bbb"
routes.user_hobby_b.reqs.userName = "\w+"
routes.user_hobby_b.type = "Zend_Controller_Router_Route"
0302nobodyさん
2011/07/13(水) 21:15:54.26ID:???という話ではなくて?
0303nobodyさん
2011/07/13(水) 22:19:05.41ID:???ありがとうございます、出来ました
こうやって使うものなんですね、お恥ずかしい。ありがとうございました
0304nobodyさん
2011/07/24(日) 16:11:17.20ID:???$mail =new Zend_Mail( 'ISO-2022-JP' );
$mail->setFrom( $fromMailAddress, $fromName );
$mail->addTo( $mailaddress, $toName );
$mail->setSubject( $subjest );
$mail->setBodyText( $body );
//送信実行
try {
$mail->send();
catch( Zend_Exception $ze ){
die( '失敗:'.$ze->getMessage() );
}
失敗:5.5.2 Syntax error. e6sm3408137pbm.23
って出るのはなぜ?
0305nobodyさん
2011/07/24(日) 21:25:38.82ID:???552 は「ディスク不足のため、要求された処理は実行不能。」なので、まずディスクを調べる必要あり。Syntax.... のほうは分からん。
0306nobodyさん
2011/07/24(日) 23:56:22.74ID:???でもSMTPのステータスコードだからローカルディスクではなくてサーバーのディスクだよね・・・。
色々見てたら
http://ichi.txt-nifty.com/bmailnews/2010/01/coreserversmtps.html
「送信したメールがFromアドレスを詐称している。」
ってのを発見。
replyをプロバイダのメアドに変更して明日やってみます。
0307nobodyさん
2011/07/25(月) 18:50:43.44ID:???No message template exists for key 'hostnameUnknownTld'
って例外出るんだけど・・・、
'
'hostnameUnknownTld'のメッセージテンプレートが無いよってことなんだろうけど
メッセージテンプレートってエラー時のメッセージだよね?
書いてるんだけとなぁ・・・。
0308nobodyさん
2011/07/30(土) 20:31:38.70ID:TaO97IVQ自前でmod_rewriteとかにほしいヘッダ分指定するしかない?
0309nobodyさん
2011/08/01(月) 23:01:26.47ID:???まだ解決できてないのですが、
http://pastebin.com/zSkXdCQq
どなたか教えてもらえなでしょうか?
0310nobodyさん
2011/08/03(水) 03:41:29.54ID:???うまくいかないのに変なトラフィック送りまくるのはやめたほうがいいかと。
0311nobodyさん
2011/08/03(水) 03:44:39.16ID:???0312nobodyさん
2011/08/03(水) 09:17:59.15ID:???>>311
お返事ありがとうございます。
304です。
addTo()のとこなんですが、
http://d.hatena.ne.jp/tomoya/20100804/1280900579
の中段付近の「555 5.5.2 Syntax error というエラー。」というとこに"<" ">" で括らないいけないという趣旨を見つけたのでこのようにしました。
以前はこのコードで正しく送信できていたのに突然送信エラーが出て原因が解決できずにいます。
0313nobodyさん
2011/08/03(水) 09:19:36.33ID:???わざわざくっつけてる < > のことなら
ZendFramework が御丁寧に取り除いてくれるから大丈夫みたいだよ。
0314nobodyさん
2011/08/03(水) 21:05:17.49ID:jbZJg+O3routeShutdown() と dispatchLoopShutdown() と postDispatch()はどう違うんでしょうか?
マニュアルも読んだんですがちょっとピンと来ません
ルーティングからディスパッチ・アプリケーション実行の流れと上記メソッドの解釈は以下であってますか?
ルーティング:利用するモジュール、コントローラ、アクション、変数の解釈と決定をする
→ routeShutdown()はこの処理の終了を捕まえる
ディスパッチ:その決定(ルール)通りに各ファイルを実行して画面出力する(hogeContoller.phpとか)
→ dispatchLoopShutdown()はこの処理の終了を捕まえる
それが終わったら、ディスパッチ終了ってことになる
→ postDispatch()はこの処理の終了を捕まえる
最終的に何がしたいかって言うと、エラーコントローラをエラー発生時のモジュールに属するものを使わせたいんです。
なので、
1)エラーが発生する
2)その時のモジュール($module)を捕まえる
3)そのモジュールを$plugin->setErrorHandlerModule($module);としてエラーハンドラに当てはめる
って処理を実行できるプラグインが必要で、そのプラグインを実行するイベントメソッドは
上記のrouteShutdown() と dispatchLoopShutdown() と postDispatch()のどれが良いのか相談したいです
結論的には、試しにやってみたらpostDispatch()で上手くいってるんですが、
参考にしたオリジナルのプラグインだとrouteShutdown()なんですよね…
http://stackoverflow.com/questions/3013321/set-a-different-errorhandler-depending-on-module-zend-framework
0315nobodyさん
2011/08/03(水) 22:47:07.09ID:???変数 $fromName の中身をローマ字だけに変えてみたらどう?
addTo とかは、パラメータからいくつかの記号(不等号含む)を除去したあと、
ヘッダ生成時に、名前の有り無しに応じて不等号をメールアドレスに付加するけど
記号を除去する際に、マルチバイトを考慮していないので、そこでおかしくなっている可能性はある。
ちなみに Zend Framework のコンポーネントのコードでは mbstring エクステンションはできるだけ使ってはいけないという掟があり、
開発者にマルチバイト圏の人が多数入らない限り覆すのは無理。
半永久的に、名前にはローマ字使用を推奨。
0316nobodyさん
2011/08/06(土) 18:05:07.83ID:???0317nobodyさん
2011/08/06(土) 23:41:59.34ID:???あちゃー・・・・
エラーの原因は送信先メールアドレスが正しく渡されていませんでした・・・・。
お返事いただいた方、おさわがせしました。
0318nobodyさん
2011/08/06(土) 23:48:35.16ID:???0319nobodyさん
2011/08/06(土) 23:49:14.36ID:???0320nobodyさん
2011/08/06(土) 23:49:22.13ID:???0321nobodyさん
2011/08/06(土) 23:51:01.42ID:???0322nobodyさん
2011/08/06(土) 23:52:19.79ID:???お礼です。
これどうぞ!!!!!!!
http://www.exotiki.net/mjo/file/data/mai0717.jpg
0323nobodyさん
2011/08/07(日) 00:12:02.06ID:???間違えました。
こっちです!!!!!!
http://www.nicovideo.jp/watch/sm10175056
0324nobodyさん
2011/08/08(月) 17:13:27.59ID:???0325nobodyさん
2011/08/13(土) 16:32:41.44ID:???具体的には
http://sushiduy.plesk3.freepgs.com/levenshtein.sql
この関数(文字列1が文字列2とどれだけ似ているかの値(リーベンシュタイン距離)を返す)を使いたいです
0326nobodyさん
2011/08/13(土) 17:46:37.17ID:???一応どうやったか書いておきます
クエリーかmyphpadminで>>325のストアド関数を登録して
コードでは
$select->where(" levenshtein_ratio(name, ? ) > 50",$str)
みたいに書いたら動きました
0327nobodyさん
2011/08/13(土) 19:23:43.27ID:???0330nobodyさん
2011/08/16(火) 16:20:51.47ID:jcHZicfghttp://module.hogehoge.com/ctrl/act/param1...
って感じにサブドメインにモジュール名を指定するパターンがありますが、
あれを使うと他のモジュールに移動する度にhttp://からの絶対パス指定しなきゃ
ダメなんですよね?
httpからのリンクさせることで、何かデメリットってありますか?
デメリットていうのは、zendの機能的なデメリットじゃなくてサイト運営上の
デメリットも含めてってことですが…
0331nobodyさん
2011/08/17(水) 22:08:04.43ID:???環境に応じた絶対パスのリンクを生成する関数を作らないといけないかな。
デザイナーが対応できなくてトラブルの元になるかも。
■ このスレッドは過去ログ倉庫に格納されています