0

PHP と OOP を使用して CMS を構築しています。これはちょっとした学習プロジェクトであり、OOP スキルを向上させながら、最終的な目標を念頭に置く動機を与えてくれるものです。

バックエンド ページを実際にコーディングするようになりました。フォルダ、ファイルなどに関してアプリを最適に構成する方法について質問があります。

クラスのフォルダーがあり、そのうちのいくつかをフロントエンド Web サイトで使用する予定です。そのようなクラスの 1 つに、テンプレート (ヘッダー、コンテンツ、フッター) の読み込みを処理する Page クラスがあります。バックエンドは別の話ですが、明らかにどのページ (ページの追加/編集、ユーザーの追加/編集など) もデータベースに保存されないため、これらのページの出力をどのように処理すればよいですか?

Page クラスのサブクラスを作成し、そこにコンテンツを設定するのが最善でしょうか? それとも、ページごとに新しい PHP ファイルを作成したほうがよいのでしょうか? 私はサブクラスを使用するだけに傾いていますが、それはかなり重いファイルにつながる可能性があります(ページクラス、ページの追加のサブクラス、ページの編集など)。

これについての最善の方法についてのアドバイスは素晴らしいでしょう。

4

2 に答える 2

1

各サブクラスを個別のファイルに入れます。ファイル名とクラス名を対応させて、後でクラスの自動読み込みを設定できるようにします。

于 2013-05-16T14:09:10.303 に答える
1

私は多かれ少なかれこの構造(MVCアーキテクチャパターン)を行います:

-MyCMS
--assets
----css
----img
----js
----templates
------pages
------partials
--------forms
--------grids
--conf
--src
----Controller
------Dispatcher
----Form
----Model
------DataMapper
----Routing
----View
------Renderer
--test

すべてのクラスを同じフォルダーに保持するのは悪い考えだと思います。それらは論理的にグループ化する必要があります。これは単なる例です。これらのコンポーネントをsrcフォルダーに入れる必要はありませんが、コンポーネントを整理する方法についてのアイデアが得られます。

あなたのクラスPageは汎用的で、assets/templates/pages異なるページごとにサブクラス化するのではなく、テンプレートからページを構築する必要があります。

于 2013-05-16T14:39:15.667 に答える