นี่คือตัวอย่างของโครงสร้างไฟล์ MVC ที่คุณสามารถใช้โดยใช้ Phalcon> = 3.0.x
สำหรับเอกสารเพิ่มเติมให้ตรวจสอบเอกสาร Phalcon
中文简体
นี่คือโครงสร้าง MVC ที่ง่ายมากมันมีหนึ่งรุ่นตัวควบคุมสองตัวและมุมมอง ตัวอย่างนี้ไม่ได้ใช้เนมสเปซ บริการถูกกำหนดใน public/index.php โดยไม่ต้องใช้ DiFactoryDefault :
simple
├── apps
│ ├── controllers
│ │ ├── IndexController.php
│ │ └── ProductsController.php
│ ├── models
│ │ └── Products.php
│ └── views
│ └── products
│ └── index.phtml
└── public
└── index.php
นี่คือโครงสร้าง MVC ที่ง่ายมากมันมีหนึ่งรุ่นตัวควบคุมสองตัวและมุมมอง ตัวอย่างนี้ไม่ได้ใช้เนมสเปซ บริการถูกกำหนดใน public/index.php โดยไม่ต้องใช้ DiFactoryDefault ตัวอย่างนี้ใช้โวลต์เป็นเอ็นจิ้นเทมเพลต:
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 ที่ง่ายมากมันมีหนึ่งรุ่นตัวควบคุมสามตัวและมุมมอง เส้นทางถูกกำหนดไว้ใน 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
โครงสร้าง MVC ง่าย ๆ โดยไม่ต้องใช้ PhalconMvcApplication แอปพลิเคชันนี้ไม่ได้ใช้เนมสเปซ นี่คือตัวอย่างของวิธีที่คุณสามารถแทนที่ PhalconMvcApplication โดยใช้ฟังก์ชั่นที่คล้ายกัน นอกจากนี้ยังกำหนดบริการโดยไม่ต้องใช้ DiFactoryDefault ใน public/index.php :
simple-without-application/
├── apps
│ ├── controllers
│ │ ├── IndexController.php
│ │ └── ProductsController.php
│ ├── models
│ │ └── Products.php
│ └── views
│ └── products
│ └── index.phtml
└── public
└── index.php
นี่คือโครงสร้าง MVC แบบโมดูลเดียวที่ไม่มีเนมสเปซ คุณสามารถค้นหาไดเรกทอรีของโมดูลภายใต้ apps/ ไดเรกทอรี ตัวอย่างนี้ไม่ได้ใช้เนมสเปซ บริการทั้งหมดจะเริ่มต้นใน public/index.php นอกจากนี้ในไฟล์นี้คุณยังสามารถค้นหาคลาสแอปพลิเคชันที่เริ่มต้นบริการและการจัดกลุ่ม autoloaders จัดกลุ่มงานเหล่านี้ตามวิธีการ
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 นอกจากนี้ในไฟล์นี้คุณยังสามารถค้นหาคลาสแอปพลิเคชันที่เริ่มต้นบริการและการจัดกลุ่ม autoloaders จัดกลุ่มงานเหล่านี้ตามวิธีการ
single-namespaces/
├── apps
│ ├── controllers
│ │ ├── IndexController.php
│ │ └── ProductsController.php
│ ├── models
│ │ └── Products.php
│ └── views
│ └── products
│ └── index.phtml
└── public
└── index.php
โครงสร้าง MVC แบบโมดูลเดียวที่สร้างขึ้นโดยเครื่องมือนักพัฒนา Phalcon แทนที่จะเริ่มต้นทุกบริการแต่ละบริการมันใช้ 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 แบบหลายโมดูล ตัวอย่างนี้ใช้สองโมดูล: ส่วนหน้าและแบ็กเอนด์ โดยส่วนหน้าค่าเริ่มต้นจะให้บริการหากไม่มีการถามเส้นทางแบ็กเอนด์ คุณสามารถกำหนดเส้นทางที่ใช้หนึ่งโมดูลหรืออื่นใน public/index.php :
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 แบบหลายโมดูล ตัวอย่างนี้ใช้สองโมดูล: ส่วนหน้าและแบ็กเอนด์ โดยส่วนหน้าค่าเริ่มต้นจะให้บริการหากไม่มีการถามเส้นทางแบ็กเอนด์ คุณสามารถกำหนดเส้นทางที่ใช้หนึ่งโมดูลหรืออื่นใน public/index.php โวลต์ใช้เป็นเครื่องยนต์เทมเพลต:
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
นี่คือโครงสร้าง MVC แบบหลายโมดูลที่สร้างขึ้นโดยเครื่องมือนักพัฒนา Phalcon:
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 ใหม่ ดูไฟล์ licence.txt สำหรับข้อมูลเพิ่มเติม
ลิขสิทธิ์ (c) 2011-2016, ทีมงาน Phalcon Framework