0

私は Stack Overflow と PHP プログラミング全般に不慣れで、PHPrequire()require_once()関数を使用してスクリプトにファイルを含めることについて質問があります。

私は、PHP でオープン ソースの Web アプリを構築する過程にあり、インクルード ファイルの操作方法に取り組んでいます。各ページの実際のコードと各ページの HTML からプログラムのコア機能を分離したいと考えており、現在、いくつかのインクルード ファイルがあり、1 つはデータベース関連の機能と変数用、1 つは一般的なサイト/プログラム設定用、もう 1 つはその他のファイルです。他の機能のために。現在、これらのファイルはすべて、bootstrap.php という 1 つのファイルによって参照されています。このファイルの内容はhttps://code.google.com/p/audioshout/source/browse/inc/bootstrap.phpにあります。

しかし、何人かの人から、この戦略は良くないと言われましたが、実際に使用するより良い戦略を教えてくれた人はいませんでした. 私の現在の戦略の結果として、特定の機能が数ページでしか必要とされない場合でも、特定の機能に関連する警告がサイトのすべてのページで生成されます。しかし、bootstrap.php に含まれるファイルに含まれているため、サイトのすべてのページに含まれているため、ページにアクセスするたびに関数が呼び出され、警告がスローされます。

インクルード戦略をクリーンアップするための最良の方法は何ですか、または PHP プロジェクトにファイルをインクルードするための最良の戦略は何でしょうか? また、インクルードを操作するとき、およびプロジェクトの設定を作成するときに、定数はどのように機能しますか? 現在、すべての設定は、ユーザーが構成可能なものであっても、定数ではなく変数に格納されていますが、WordPress などの他のプロジェクトでは、特に含まれるファイルなどのパスに関して、変数ではなく定数を使用しているのを見てきました。

回答ありがとうございます。このプロジェクトのソース コードをさらに表示するには、http://code.google.com/p/audioshout/にアクセスしてください。

4

3 に答える 3

1

ファイルごとに 1 つのクラスで php を記述し、psr-0 の命名に従う必要があります。ここに良い記事があります。http://net.tutsplus.com/tutorials/php/psr-huh/

すべてのクラスとファイルを作成すると、多くの require ステートメントが必要になると思うかもしれません。しかし、ここでオートローディングの出番です。チュートリアルに従えば、別の require ステートメントを書く必要はありません。

于 2013-05-23T01:59:39.173 に答える
0

クラスのオートロードも検討してください。各クラスに適切に名前を付け、名前空間構造をファイル システム構造にミラーリングする場合、include ステートメントや require ステートメントを使用する必要はほとんどありません。

于 2013-05-23T02:09:44.127 に答える