PHP MVC 最佳实践与 Doctrine 2

Posted

技术标签:

【中文标题】PHP MVC 最佳实践与 Doctrine 2【英文标题】:PHP MVC Best Practice with Doctrine 2 【发布时间】:2011-03-07 06:44:05 【问题描述】:

我想在 php 中使用 Doctrine 作为 ORM 进行开发,假设 Doctrine 作为模型。我知道有一个 web 框架,例如 Symfony,它默认使用 Doctrine,但我需要知道是否有一个好的解决方案可以在 MVC 中部署 PHP + Doctrine。

【问题讨论】:

【参考方案1】:

Zend Framework 是一个很棒的 PHP 框架,有很多集成 Doctrine 和 ZF 的好资源。

特别是关于 Doctrine 1,请查看 Zendcast:

http://www.zendcasts.com/introducing-doctrine-1-2-integration/2009/11/

对于 Doctrine 2,请查看以下应用程序资源和引导代码:

https://github.com/guilhermeblanco/ZendFramework1-Doctrine2

https://github.com/marsbomber/zf1-doctrine2

【讨论】:

恕我直言,ZF 是一个“重”框架,我会考虑一个轻量级框架。 通过适当的缓存,ZF 是最快的框架之一。但是如果你需要 Speed,你需要尝试 Yii【参考方案2】:

我认为您需要在 MVC 解决方案中找到合适的位置来放置 Doctrine 初始化代码。我们框架中的示例:https://github.com/ysubach/mvcskel/blob/master/lib/MvcSkel/Filter/DoctrineInit.php

完成后,您可以轻松地从控制器类调用模型方法。

【讨论】:

【参考方案3】:

这是我使用的 github 骨架项目,它在引导程序中使用 Zend Fanework 1.11.2 进行了学说 2 初始化,干净整洁,使用模型作为实体,使用模型存储库作为业务逻辑。单元测试和 ant 构建脚本也适用于您的 TDD 开发人员。

https://github.com/eddiejaoude/Zend-Framework--Doctrine-ORM--PHPUnit--Ant--Jenkins-CI--TDD-

ZF 是一个很棒的 php 框架,将它与教义相结合使其成为一个非常强大的组合。

享受

【讨论】:

以上是关于PHP MVC 最佳实践与 Doctrine 2的主要内容,如果未能解决你的问题,请参考以下文章

PHP MVC 最佳实践 - 将 Session 变量从控制器传递给模型类或直接在模型中访问

在存储库级别在 Doctrine2 ORM 中实现分页的最佳实践

MVC - 数据计算最佳实践 - 视图模型与控制器

MVC 验证 - 使用服务层保持 DRY - 最佳实践是啥?

PHP核心技术与最佳实践——全局浏览

PHP核心技术与最佳实践