私は現在、独自の PHP フレームワークに取り組んでおり、正しい方向に進んでいるかどうかを判断するための助けが必要です...
このフレームワークは、私自身の使用と、一般的に私の PHP スキルをさらに向上させるためのものです。私は多くの問題に遭遇しましたが、それらを克服することで多くのことを学び、ゼロから何かを作成できることが大好きなので、「Zend を使用するだけ」などの回答を見たくありません! ;)
私は Stack Overflow と他の多くのサイトの両方でたくさんの記事を読みましたが、必要な正しい答えを得ることができません。
いくつかの異なる解決策を試しましたが、混乱してしまい、どちらの方向に進むべきかわかりません! 全く頭に入らない...
「理論的な」フレームワーク構造
- .htaccess
- index.php
- private/
- app/
- bootstrap.php
- modules/
- default/
- controllers/
- pages.php
- index.php
- models/
- views/
- admin/
- controllers/
- models/
- views/
- config/
- config.php
- autoloader.php
- lib/
- Some_Library
- Class1
- class1.php
- Class2
- class2.php
- public/
- css
- images
- scripts
詳細
- index.phpはメイン ファイルで、すべてのリクエストが.htaccessでルーティングされます。
- private/は明らかに公にアクセスできません。
- public/にはすべてのパブリック ファイルが含まれます。
- app/には、すべてのアプリ固有のコードが含まれています。
- lib/には、オートローダーで呼び出される Zend または別のライブラリ (私も自分で作業しています) を含めることができます。
- bootstrap.phpはアプリ固有のコードです...これは必要ですか? メインの「index.php」で十分ですか?.
- modules/には各モジュールが含まれます...モジュールはまったく必要ですか? .
- default/は、ほとんどのリクエストの MVC を含むデフォルト モジュールです (「admin」が URL の最初の部分でない場合に使用されます)。
- admin/は、管理セクションの MVC を含むモジュールです。
とにかく、私の質問に...
管理セクションを Web サイトの残りの部分から分離した方がよいと考えましたが、ここで行き詰まっています。上記の構造で動作するようにしましたが、これが最も効果的な方法かどうかはわかりません。
site.com/videos/view/1/というリクエストが私のサイトに来たら..
モジュール: デフォルト コントローラ: ビデオ アクション: ビュー パラメータ: array( '1' )
そして、リクエストsite.com/admin/pages/view/1/が私のサイトに来た場合..
モジュール: 管理 コントローラ: ページ アクション: ビュー パラメータ: array( '1' )
これはこれについて正しい方法ですか?それとも、私はそれを過度に複雑にして、やる価値のないことをしていますか?
管理セクション用に完全に別のアプリケーション フレームワークを用意する必要がありますか? 管理セクションの MVC を残りのすべてから分離する必要さえありますか?
大規模な質問で申し訳ありませんが、できるだけ多くの情報を提供したかっただけです! 答えられる部分は自由に答えてください=P