これらは、Phalcon> = 3.0.xを使用して使用できるMVCファイル構造の例です。
詳細については、Phalcon Docsをご覧ください。
中文简体
これは非常に単純なMVC構造であり、1つのモデル、2つのコントローラー、およびビューが含まれています。この例では、名前空間を実装していません。サービスは、 DiFactoryDefaultを使用せずにpublic/index.phpで定義されます。
simple
├── apps
│ ├── controllers
│ │ ├── IndexController.php
│ │ └── ProductsController.php
│ ├── models
│ │ └── Products.php
│ └── views
│ └── products
│ └── index.phtml
└── public
└── index.php
これは非常に単純なMVC構造であり、1つのモデル、2つのコントローラー、およびビューが含まれています。この例では、名前空間を実装していません。サービスは、 DiFactoryDefaultを使用せずにpublic/index.phpで定義されます。この例では、ボルトとしてテンプレートエンジンを使用しています。
simple-volt/
├── app
│ ├── config
│ │ ├── config.php
│ │ ├── loader.php
│ │ └── services.php
│ ├── controllers
│ │ ├── ControllerBase.php
│ │ └── IndexController.php
│ └── views
│ ├── index
│ │ ├── index.volt
│ │ └── test.volt
│ ├── index.volt
│ └── layouts
│ └── template.volt
├── index.html
└── public
└── index.php
別の非常にシンプルなMVC構造には、1つのモデル、3つのコントローラー、およびビューが含まれています。ルートは、 app/config/routes.phpで定義されています。一部のルートはcontrollers/ :
simple-subcontrollers/
├── app
│ ├── config
│ │ ├── config.php
│ │ ├── loader.php
│ │ ├── routes.php
│ │ └── services.php
│ ├── controllers
│ │ ├── ControllerBase.php
│ │ ├── UsersController.php
│ │ └── admin
│ │ ├── ControllerBase.php
│ │ └── UsersController.php
│ └── views
│ ├── admin
│ │ └── users
│ │ └── index.volt
│ ├── index
│ │ └── index.volt
│ ├── index.volt
│ └── users
│ └── index.volt
├── index.html
└── public
└── index.php
PhalconMvcApplicationを使用せずに単純なMVC構造。このアプリケーションは名前空間を使用しません。これは、同様の機能を実装することにより、 PhalconMvcApplicationをオーバーライドする方法の例です。また、 public/index.phpでDiFactoryDefaultを使用せずにサービスを定義します。
simple-without-application/
├── apps
│ ├── controllers
│ │ ├── IndexController.php
│ │ └── ProductsController.php
│ ├── models
│ │ └── Products.php
│ └── views
│ └── products
│ └── index.phtml
└── public
└── index.php
これは、名前空間のないシングルモジュールMVC構造です。モジュールのディレクトリはapps/ディレクトリの下にあります。この例では、名前空間は使用しません。すべてのサービスは、 public/index.phpで初期化されます。また、このファイルでは、これらのタスクをメソッドごとにグループ化するサービスとオートローダーを初期化するアプリケーションクラスを見つけることもできます。
single
├── apps
│ ├── controllers
│ │ ├── IndexController.php
│ │ └── ProductsController.php
│ ├── models
│ │ └── Products.php
│ └── views
│ ├── index.phtml
│ └── products
│ ├── index.phtml
│ └── test.phtml
└── public
└── index.php
これは、名前空間を使用したシングルモジュールMVC構造です。モジュールのディレクトリはapps/ディレクトリの下にあります。この例では、名前空間を使用します。すべてのサービスは、 public/index.phpで初期化されます。また、このファイルでは、これらのタスクをメソッドごとにグループ化するサービスとオートローダーを初期化するアプリケーションクラスを見つけることもできます。
single-namespaces/
├── apps
│ ├── controllers
│ │ ├── IndexController.php
│ │ └── ProductsController.php
│ ├── models
│ │ └── Products.php
│ └── views
│ └── products
│ └── index.phtml
└── public
└── index.php
Phalcon開発者ツールによって生成される単一モジュールMVC構造。すべてのサービスを個別に初期化する代わりに、 DiFactoryDefaultを使用します。
single-factory-default/
├── app
│ ├── config
│ │ └── config.php
│ ├── controllers
│ │ ├── ControllerBase.php
│ │ ├── IndexController.php
│ │ └── TestController.php
│ └── views
│ ├── index
│ │ └── index.phtml
│ └── index.phtml
├── index.html
└── public
└── index.php
これはシングルモジュールMVC構造です。すべてのファイルとディレクトリはラクダ化されています(ビューを含む):
single-camelized-dirs/
├── App
│ ├── Config
│ │ ├── Loader.php
│ │ └── Services.php
│ ├── Controllers
│ │ ├── IndexController.php
│ │ └── ProductsController.php
│ ├── Models
│ │ └── Products.php
│ └── Views
│ ├── Index
│ │ └── Index.phtml
│ └── Products
│ └── Index.phtml
└── public
└── index.php
これは、サービスを登録する標準以外の方法を示すシングルモジュールMVC構造:
single-service-provider/
├── app
│ ├── Bootstrap.php
│ ├── Http
│ │ ├── Controllers
│ │ │ ├── Controller.php
│ │ │ └── IndexController.php
│ │ └── routes.php
│ ├── Models
│ └── Providers
│ ├── AbstractServiceProvider.php
│ ├── ConfigServiceProvider.php
│ ├── DatabaseServiceProvider.php
│ ├── EscaperServiceProvider.php
│ ├── EventManagerServiceProvider.php
│ ├── ModelsMetadataServiceProvider.php
│ ├── MvcDispatcherServiceProvider.php
│ ├── PhpTemplateEngineServiceProvider.php
│ ├── ResponseServiceProvider.php
│ ├── RouterServiceProvider.php
│ ├── ServiceProviderInterface.php
│ ├── SessionServiceProvider.php
│ ├── TagServiceProvider.php
│ ├── UrlResolverServiceProvider.php
│ ├── ViewServiceProvider.php
│ └── VoltTemplateEngineServiceProvider.php
├── bootstrap
│ └── autoload.php
├── config
│ ├── application.php
│ └── providers.php
├── index.html
├── public
│ └── index.php
├── resources
│ └── views
│ ├── index
│ │ └── index.volt
│ ├── index.volt
│ └── partials
│ └── content.volt
└── storage
├── cache
│ ├── data
│ └── volt
└── logs
これはマルチモジュールMVC構造です。この例では、フロントエンドとバックエンドの2つのモジュールを実装しています。デフォルトでは、バックエンドへのルートがない場合、FrontEndが提供されます。どのルートがpublic/index.phpで1つのモジュールを使用するかを定義できます。
multiple/
├── apps
│ ├── backend
│ │ ├── Module.php
│ │ ├── controllers
│ │ │ ├── IndexController.php
│ │ │ ├── LoginController.php
│ │ │ └── ProductsController.php
│ │ ├── models
│ │ │ └── Products.php
│ │ └── views
│ │ ├── login
│ │ │ └── index.phtml
│ │ └── products
│ │ └── index.phtml
│ └── frontend
│ ├── Module.php
│ ├── controllers
│ │ ├── IndexController.php
│ │ ├── ProductsController.php
│ │ └── UsersController.php
│ ├── models
│ │ └── Products.php
│ └── views
│ ├── index
│ │ └── index.phtml
│ └── products
│ └── index.phtml
└── public
└── index.php
これはマルチモジュールMVC構造です。この例では、フロントエンドとバックエンドの2つのモジュールを実装しています。デフォルトでは、バックエンドへのルートがない場合、FrontEndが提供されます。どのルートがpublic/index.phpで1つのモジュールまたは別のモジュールを使用するかを定義できます。ボルトはテンプレートエンジンとして使用されます。
multiple-volt/
├── apps
│ └── frontend
│ ├── Module.php
│ ├── config
│ │ └── config.php
│ ├── controllers
│ │ ├── ControllerBase.php
│ │ └── IndexController.php
│ └── views
│ ├── index
│ │ ├── index.volt
│ ├── index.volt
├── config
│ ├── modules.php
│ └── services.php
├── index.html
└── public
└── index.php
これは、一般的なビューディレクトリを備えたマルチモジュールMVC構造です。
multiple-shared-views/
├── apps
│ ├── common
│ │ └── views
│ │ ├── index
│ │ │ └── index.phtml
│ │ ├── index.phtml
│ │ └── products
│ │ └── index.phtml
│ └── modules
│ ├── backend
│ │ ├── Module.php
│ │ ├── controllers
│ │ │ ├── IndexController.php
│ │ │ └── ProductsController.php
│ │ └── models
│ │ └── Products.php
│ └── frontend
│ ├── Module.php
│ └── controllers
│ └── IndexController.php
└── public
└── index.php
これは、Phalcon開発者ツールによって生成されるマルチモジュールMVC構造です。
multiple-factory-default/
├── apps
│ └── frontend
│ ├── Module.php
│ ├── config
│ │ └── config.php
│ ├── controllers
│ │ ├── ControllerBase.php
│ │ └── IndexController.php
│ └── views
│ ├── index
│ │ └── index.phtml
│ └── index.phtml
├── index.html
└── public
└── index.ph
これは、モデルサービスレイヤーパターンを実装したマルチモジュールMVC構造:
multiple-service-layer-model/
├── apps
│ ├── config
│ │ ├── config.php
│ │ ├── modules.php
│ │ └── services.php
│ ├── models
│ │ ├── entities
│ │ │ └── User.php
│ │ ├── repositories
│ │ │ ├── Exceptions
│ │ │ │ └── InvalidRepositoryException.php
│ │ │ ├── Repositories.php
│ │ │ └── Repository
│ │ │ └── User.php
│ │ └── services
│ │ ├── Exceptions
│ │ │ └── InvalidServiceException.php
│ │ ├── Service
│ │ │ └── User.php
│ │ └── Services.php
│ └── modules
│ └── frontend
│ ├── Module.php
│ ├── controllers
│ │ ├── ControllerBase.php
│ │ └── IndexController.php
│ └── views
│ ├── index
│ │ └── index.phtml
│ └── index.phtml
├── database.sql
├── index.html
├── public
│ └── index.php
└── tests
├── Services
│ └── UserServiceTest.php
├── TestHelper.php
├── UnitTestCase.php
└── phpunit.xml
マイクロフレームワークのようなアプリケーション:
micro
└── index.php
Phalcon開発者ツールによって生成されるマイクロフレームワークのようなアプリケーション:
micro-factory-default/
├── config
│ └── config.php
├── index.html
├── public
│ └── index.php
└── views
├── 404.phtml
└── index.phtml
PhalconMvcViewSimpleを使用してビューがレンダリングされるマイクロフレームワークのようなアプリケーション:
micro-simple-views
├── config
│ ├── config.php
│ └── services.php
├── index.php
└── views
├── 404.volt
├── 500.volt
└── index.volt
Phalcon MVCの例は、新しいBSDライセンスの下でライセンスされているオープンソースソフトウェアです。詳細については、license.txtファイルを参照してください。
Copyright(c)2011-2016、Phalcon Frameworkチーム