1

私はphpに手を出して、Stack Overflowとphp.netの両方のドキュメントをよく読んでいますが、私の理解が次のようになっていることについて、間違った考えを持っているのではないかと心配しています。

  1. インクルードファイルは、インクルードフォルダーに保持するのが最適です。これらは、ファイルに固有の関数のようなものです。つまり、users.phpは、このフォルダー内のユーザー関連アイテムの関数を保持します。

  2. プロジェクトルートは、dbrootやその他のセット固有のアイテムのconfig.phpを保持します

  3. そのようなドリルダウンが含まれますが、プロジェクトルートからのみ

include('includes/user.php');

これが私の質問です。

  1. 私は一般的な考えを持っていますか、それとも複雑なプロジェクトをレイアウトするためのより簡単な方法ですか?

  2. のような関数です

    function includes($path, $location){ return $_SERVER['DOCUMENT_ROOT']. "/" .$path. "/" .$location; }

とのような使用法

require(includes('includes', 'functions.php'));

達成するための賢い方法は、プロジェクトの承認を含みます

  1. joomla、phpbb、vbulletinなどの主要なプロジェクトがどのように達成するかについては、私はそれを調べましたが、それらがどのようにこれを達成するかについて完全に混乱しています。

  2. プロジェクトのレイアウトとインクルードで考慮する必要があるその他のすべて。関数のグループを独自のファイルにまとめて分離することを検討しています

ありがとう

4

2 に答える 2

0

通常、巨大なプロジェクトの場合、私のプロジェクトレイアウトは次のとおりです。

includeフォルダーcontains--config.php(DB接続)--init.php

コントローラフォルダには、$_POSTとデータ検証を処理するためのすべてのコントローラが含まれています

ビューフォルダにはすべてのWebページが含まれています。これらは、訪問者が覚えているURLを持っているものです

ユーティリティフォルダには、すべてのSQLスクリプト(INSERT / CREATE / DELETE)が含まれています

もちろん、あなたはあなたのjs、cssフォルダを持っています

したがって、直感的に、ビューには独自のコントローラーが含まれます。コントローラにはinit.phpが含まれ、init.phpにはDB接続を確立するためのconfig.phpすべてユーティリティが含まれるため、CRUDの目的でメソッドを簡単に呼び出すことができます...

他の人にも自分のスタイルがありますが、これは私のものです。

于 2013-02-01T10:00:21.290 に答える
0

自分と他の開発者の両方が理解できる複雑なプロジェクトのレイアウトを作成する場合は、 MVCフレームワークの使用を検討する必要があります。

PHPフレームワークには次のものが含まれます。

于 2013-02-01T10:00:48.670 に答える