プログラミング言語として PHP を使用していくつかの小さな Web サイトを作成したいと考えています。いくつかのフレームワークを見てきましたが、どれもかなり大きく、共有ホスティング環境でどれだけうまく動作するかわかりません。共有ホスティングでうまく機能するフレームワークを誰かが知っているかどうか疑問に思っていましたか? 私は MVC と ORM の機能を備えたものを探していますが、その他の追加機能は単なるボーナスです。
10 に答える
ElisLabs codeigniter ( http://codeigniter.com/ ) は、手袋のように法案に適合するはずです。
これは、私が PHP プロジェクトを行うときに選択するフレームワークです。
私は個人的に CakePHP が大好きで、共有ホスト上で動作するクライアント向けに多くのプロジェクトを実行してきましたが、問題なく動作しますが、軽いフットプリントが本当に重要な場合は、CodeIgniter を選択します。
CakePHP. 共有ホスティングで機能しない理由がわかりません。
すでに述べたように、CodeIgniterは優れたPHPフレームワークです。優れたユーザーガイド、コミュニティ、そして軽いフットプリントがあります。
コハナも良い選択です。元々は CodeIgniter からフォークされたものでしたが、現在は速度、迅速な開発、および柔軟性のために最適化された、PHP5 専用の実際のオープンソース プロジェクトとして書き直されています。
補足/開示、私はもともと Kohana に形成されたフォークに関与していました。CodeIgniter (少なくとも約 1 年か 2 年前、私が関わっていたとき) は、ユーザーの貢献に対して非常にオープンではありません。私はいくつかの拡張機能とバグ修正にパッチを提供しましたが、それらは無視されたため、基本的に腐ってしまいました*。その結果、何人かの人々が自分のコントリビューションを取り入れることに大きな関心を示しました。Kohana は CodeIgniter とまったく同じ原則とアイデアに基づいていますが、実装ははるかに優れており、操作がはるかに簡単です。
(*: コードの品質のせいではありません。単純に興味を持たないというだけです。なぜなら、それは Ellislabs の商用製品の裏付けであったため、必ずしも直接的に適合するとは限らなかったからです。変更が加えられた場合のようなものでした。ライブラリに大幅な改善が加えられたとしても、その上に構築したものをすべて書き直し/変更する必要があったとしても、それは無視されます。)
小さなアプリケーションについて話しているので、おそらく問題にはなりません。CodeIgniter が最速のようです。
ただし、大きなアプリケーション (または大きくなる可能性のあるアプリケーション (コードの量ではなく負荷について話します)) の場合は、「一般的な」フレームワークをまったく使用しないことをお勧めします。それらは開発を大幅にスピードアップする可能性がありますが、ほとんどの場合、実際にはコンピューターのパワーキラーです.
たとえば、Paul M. Jonesフレームワークのいくつかのテストによると、システム リソースの約 90% から 97% を消費します (CodeIgniter はわずか 85% を消費することで良好なスコアを獲得しました)。つまり、コンピューターがフレームワークを使用して 1 秒あたり 100 の要求を処理できる場合、サーバーがブームになる前に可能な要求は 15 しか残っていないことを意味します。
もちろん、アプリケーションによって結果は異なります。Paul が実行したテストは、データベースやその他の計算を行わない単純な "Hello World" ページでした。アプリケーションロジックを追加すると、明らかに「アプリケーション/フレームワーク」の比率が大きく変わります。
フレームワークの使用を止めようとしているのではなく... コーディングを開始する前に考えさせようとしているだけです...
CodeIgniter にもう 1 票を投じてください。非常に簡単ですぐに習得でき、非常に軽量であるため、共有ホスティングに適しています。
Qcodoはレビューするもう1つのオプションです。
私は本当に CakePHP が好きです。シンプルで、ドキュメントも充実しています。MediaTemple でかなり簡単にセットアップできました。構成ファイルの webroot 変数を変更するだけで済みました。
ソニックを見てください。それは本当に軽くて速いように作られています。コア フレームワークは 3000 行未満のコードであり、26 KB のファイル 1 つだけでアプリ全体を作成できます。
その上に拡張機能 (ORM、データベース、キャッシュなど) をインストールできるように、拡張フレームワークがセットアップされています。
サイトを見る: http://sonicframework.com