CodeIgniter Part3 [転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
「はじめてのフレームワークとしてのFuelPHP」 をCI3.0に書き直したものがほしい。 静的型付け言語に回帰してる風潮でスクリプト言語離れが進んでて phpどころかrubyでさえもオワコン化してきてるって言うのに そのphpでメンテもされてない5.2とか推奨のciが盛り上がる訳がない >>66 PHP5.4以上が推奨だが PHP 5.1.6 is no longer supported. CodeIgniter now requires PHP 5.2.4 and recommends PHP 5.4+ or newer to be used. 確かにphp=wpの言語ってイメージが強いし Framework乱立で自滅してオワコン感はある だからと言ってscalaとかgoが主流になるとは思えん 今後はどうなっていくのかね 流行りで言うとnode.jsかな。主流でもないけどwebsocketやりたい人が最初に試す環境になったと思う 最近GAE/goやってみてるんだけど、良いものなんだけどクセが多いからお勧めしにくい言語・環境でもある。主流になる日は当面なさそう 必要に応じて言語選ぶ時代になってると思うから、php+CIって構成も消えないでいてくれれば御の字かな 盛り上がって欲しくないわけではないが 趣味でやるなら流行りのFWを選べばいいけど、業務アプリとか 公式サイトとかだと、最低でも10年は稼働すると思う。 その間安心して使うには、頻繁にバージョンアップしない ものがいい。 Laravelなんて、実務で使われているんかな。 俺は怖くて使えないけど。 view側でcontrollerのメソッドを利用したいんですが どういう書き方をすればいいでしょうか? 初心者ですいませんがどなたか教えて下さい >>71 もうできてるかもだけどget_instanceでコントローラのインスタンス取得できるでしょ codeigniter動かすならapacheの方がいいでしょうか? ほぼ動的コンテンツになる気がするのですがnginxでCI使ってる人も多いようで迷います codeigniterと相性が良いのはapacheかnginxか、という意味かな? よくわからん・・・ >>74 そうです、サーバーに関しては全然わからなくて質問が変かもしれませんが… codeigniterで静的コンテンツを配信することってあんまりない気がするんですが どういう選び方すればいいんでしょう? よく例にあがるnginx リバースプロキシ+apacheで、画像やCSSやJSファイルのみnginxで 実際DBから情報とってきてHTML出力するのはapacheってのが定番なんでしょうか? 質問が変すぎて回答できないよw codeigniterとWebサーバの種類は無関係だろ。 codeigniterはフレームワークの中では一般に速いと言われている、という 位の回答しか出来ないなぁ・・・ それtとも熟達者が適切な回答をくれるかな? PHPとサーバの組合せならあるかもしれんが、PHPの中でCodeIgniterが向いてるサーバとかSymfonyが向いてるサーバとかは無いと思うぞ。 >>76 ,77 フレームワークというよりPHPに向いてて、動的か静的かなどで見ればいいんですね! これ以上はサーバーの話になるのでスレチになりそうですから失礼して、意見を参考に勉強したいと思います。 ありがとうございます。 xammpでapache+ci2という構成で作っていたものを vagrant+centos6.7+nginx+php-fpm+ci3という構成にローカルからローカルへ移しています よく分からないのが、まず前者の構成のときにroutes.phpが $route['default_controller'] = "home"; $route['(:any)'] = "home/$1"; で、.htaccessが RewriteCond $1 !^(index\.php|css|js|robots\.txt) RewriteRule ^(.*)$ /Codeigniter/index.php/$1 [L] として問題なく動いていたのですが nginxではroutes.phpはそのままにnginx.confで location / { try_files $uri $uri/ /index.php?/$request_uri; } とすると、例えばですがexample.com/test (::Home function test(){}など)は問題ないのに example.com/hoge/arg とすると404になってしまいます。::Home function hoge($arg){}といった引数をとる関数なのですが。。 結局routes.phpに手を入れて $route['hoge/(:any)'] = "home/hoge/$1"; としたら動いたのですが、腑に落ちません。.htaccessで出来ていたことがnginx.confでは出来ないとかあるんでしょうか? nginxのスレで聞こうか迷ったのですが、こちらでどなたか分かる方がいればお願いします 80ですが、原因が分かりました。 routes.phpの(:any)がスラッシュにマッチしなくなったというのはドキュメント見て知ってたんですけど これが原因でした。 (:any)では/hogeまでしか取ってくれてなかったためargが渡っていなかったようで (.+)に変えることで今まで通りの動作になりました >一方でこのバグを活用していた開発者もいることでしょう。 もしあなたがその一人で、引き続きスラッシュにマッチさせたいなら、 正規表現 .+ を使ってください: これ、自分が当てはまってるとは・・・ しかしexample.com/index.php/products/shoes/sandals/123 というようにメソッドへ引数をスマートに渡せるのが気持ち良いのに、この(:any)の変更って他にハマる人いなかったんですかね・・・ おかげで1日潰しました・・・ww is_mobileで動的に切り替えてるのですがgoogle のモバイルフレンドリーテストに合格しません >>70 思う思う。地道にセキュリティ対策で改良してくれればいいのに メジャーバージョンアップしたらソース引き継げないのはひどすぎ 今メジャーバージョンって一般的なsemverの意味合いでは「APIなどに互換性がなくなる規模の改修」を指すからそれは仕方ない 心配の本質は「ころころ打ち切るな!せめて簡単にマイグレーションできるようにしてくれ!」ってことだよねw その点CodeIgniterは天国だ。今回のメジャーバージョンアップで何も苦労しなくて逆に引くレベル CodeIgniterのライブラリ倉庫みたいなサイトはあるんでしょうか? PHPにおけるPEARやPECLみたいなものです。 CodeIgniterも少し手の混んだことをするとバージョンアップ追従するのに苦労しそうだが メジャーバージョンアップでソースが使いまわせなくなったって文句言うのは、 ドラゴンクエスト1の復活の呪文がドラゴンクエスト2で使えないって文句言うようなもんだ。 なるべく運用中のシステムのメンテナンスに掛ける労力を節約して、他の多くの仕事を 請け負ったり、新しい分野のスキルを習得して新規案件に対応したいと思わんのか? ドラゴンクエストだけやってりゃいいなら、いいけどね。 >>89 最近のゲームは引き継げるんじゃないの?知らんけど ちょっと感動したことがあったので書いておく。 cakeならサイト訪問者のログイン用と管理画面用とでセッションを分けたいとき セッションクラスに対して名前を指定すればできたけどciではそれができなかった。 そこでENVIRONMENT定数を使い分けて管理画面用のコンフィグファイルを作った。 公式のユーザガイドにはこう書いてあった。 >もし、ファイルが存在しなければ、グローバルの設定ファイルをロードします。 >これは、あなたは すべての 設定ファイルを環境固有のフォルダに置く必要はないこと、 >環境により変更するファイルだけを置けばよいことを意味します 今のところ管理画面用として分けたいのはセッション名だけでそれ以外は共通。 にも関わらずconfig.phpを丸ごとコピーして置かないといけないのか? そんな心配はなく環境固有の設定ファイルがあってもグローバルの設定を先に読んでくれるから 管理画面用のコンフィグファイルにはセッション名の項目だけを書くだけでよかった。 Ver3のマニュアルってcodeigniter.jpは作ってないの? ないよ 3からのチェンジログを本家で追いかけるのが最短かな Ver2から書き方とか使い方が大幅に変わったとかないように見えるが 大幅に変わってないのにメジャーバージョンアップなのか むしろバージョンアップしても互換性が保持されてると考えると悪いもんでもないとおもうが ライセンスの変更により極幅に変わったに違いない お察ししる! まぁそもそも緩いところが売りだから あまり機能追加とか規約とかでゴタゴタしなければ改修してくれるだけでもいいやと思ってる zendとかあの辺の大規模なやつに比べれば緩いと思うがね 日本語版のマニュアルを一括でダウンロードしたいです。 Ver2で良いです。 ダウンロードできるサイトがあれば教えてください。 railsのactive record てすごい楽だね データベースのクエリー結果の取得用の関数ですが、 fetcheColumn()に相当する関数(1列目だけ取得する関数)や、 fetchOne()に相当する関数(1行目の1列目だけ取得する関数) は、ないのでしょうか? また、パラメータクエリでは「?」を使えますが、「:name」のような 名前付きプレースホルダは利用できないのでしょうか? 今までciがPHPフレームワーク最速という認識だったけどファルコンとかスリムというのが話題になってる? もうとっくにそんな話題は終わったよw 俺の中では、Webサービス作るには、Slimは機能が不足しすぎて使えないという結論になった。 2016年03月22日 3.0のセキュリティ修正版である3.0.6がリリースされました。 よくわからんけどとりあえず3.06でサイト作ってみる。php初心者だけど趣味だしまあいいかなっと。生phpと他のフレームワークはなんか好きになれないw FuelPHPはCodeIgniterの後継らしいけど、FuelPHPではなくCodeIgniterを選ぶ理由って何だろう? fuelphpは初心者にはハードルが高かったw。もうちょいphpそのもの雰囲気に慣れたらもう少し再挑戦するつもり。 入門書かったけど本の厚さでウンザリしてしまった。 質問させてください テンプレートエンジンとしてTwigを導入してみたんですが フォームヘルパの中で変数を扱うことができません {{form_open('ここを変数で制御したい')}} シンプルな解決法はありますか? >>114 後継じゃないよ CodeIgniterでライセンスが問題になったときに似たものを作っただけ codeigniter 1.X て脆弱性が問題になったみたいだけど 具体的にどのへいが脆弱だったの? >>115 Fuelは日本でしかはやってない CodeigniterはLaravelの次くらいには使われてる 2.1.xから最新の3.0.6にアップグレードするにあたって、新規関数とか非推奨関数やら知りたいんだけど、wordpressみたいにどこかにまとめてるサイトってない? 廃止関数だけならアップグレードのページでわかるんだけども... 121だが、changelog追うしかなさそうだ... Server Requirements PHP version 7.0 or newer is required. だって そろそろ新しい和書を出してくれないかしら 3で良いから まじかよ やっぱ英語でチュートリアル読めないとついていけないか 4ってもう開発終わったん? 正式リリースは来年春ごろって何かでみた気がするけどどこでみたか思い出せない CI4は本家のダウンロードページにリンクがありますよ。 ttps://www.codeigniter.com/download CI2->3はあまり変わらなかったけど、今回は結構変わるのね。PHP7ですって。。 ttp://www.slideshare.net/tetsuroy/codeigniter4 ドキュメントが良く出来過ぎてるから、ここで質問することがないんだよ。 4のDEVじゃない正式Releaseって何時予定なん? CI4から触っててpager周り見てたんだけど検索結果件数にたいしてpager作るなら自前で書くん? FindAllになってたので 実行すれば速いんだけど今日PC無いねん Webサービスでの画面遷移について質問があります。 画面A →(POST)→ 画面B →(POST)→ 画面C と、遷移させたいとします。 で、画面Cで受信したPOSTデータにエラーがあったら画面Bに戻りたい。 このとき画面Bでは、画面Aから先にPOSTされたデータと、画面Bで先に入力した値を再表示させたい。 そこで質問ですが、 ・画面Bや画面Cでは、受信したPOSTデータをセッションに保存するように作るのでしょうか? ・画面Cから画面Bに戻るには、redirect()を使うべきか、それとも $this->画面Bのメソッド(); を呼ぶのがいいのでしょうか? 教えてください。 お願いします。 >・画面Cから画面Bに戻るには、redirect()を使うべきか、それとも $this->画面Bのメソッド(); を呼ぶのがいいのでしょうか? リダイレクト使うべき。 表示される画面とURIはなるべく一対一になるとデバッグがしやすい >>152 ありがとう。 自分が思った理由とぴったりな回答で自信持てました。 暇だしここでええんちゃうか? 見てるやつが少ないからレス付くか知らんが ではまたこのスレで質問させていただきます。 Webサービスでの画面遷移について質問があります。 画面A →(GET)→ 画面B →(POST)→ 画面C と、遷移させたいとします。 で、画面Cで受信したPOSTデータにエラーがあったら画面Bにリダイレクトで戻りたい。 このとき画面Bでは、画面Aから遷移してきたか画面Cから遷移してきたか判断したいです。 この判断方法を教えてください。 (「画面Cから遷移してきたよ」ってセッションに書いてリダイレクトするのかな???) よろしくお願いします。 >>157 俺だったら戻り時のgetにパラメータ追加するかな ■ このスレッドは過去ログ倉庫に格納されています
read.cgi ver 07.5.5 2024/06/08 Walang Kapalit ★ | Donguri System Team 5ちゃんねる