7 php frameworks symfony1 zend-framework
我的团队正在考虑使用框架来开发网站和应用程序.一些老年人确信我们应该使用Zend框架,因为它更容易挑选和选择功能,因此框架我们将是轻量级的.
但我担心他们只关注轻量级框架所具有的技术优势.在我看来,最好有一个全栈框架(我是Symfony的支持者),因为
我不希望所有人都能回答我的问题,但这正是我在答案中所寻求的:
背景:我在一家拥有约10名程序员的小商店工作.我们主要编程PHP.我们使用一个非常简单的内部开发框架和ORM库,几乎没有文档,除了最基本的功能之外什么都没有(没有验证器,没有事务,没有缓存,没有身份验证)
小智 14
为什么不两个?我从2006年开始使用symfony,已经成为真正的Doctrine粉丝一年了,几个月来,我们通过将Zend组件直接集成到我们的symfony应用程序中,在生产力阶梯上达到了很多步骤.
symfony的真正优势在于所有东西的分离,以及框架的易扩展性.你几乎可以替换整个事物的每一层.只需在/ lib /中复制/粘贴Zend目录,并在/config/ProjectConfiguration.class.php中添加此单例:
static public function registerZend()
{
if (self::$zendLoaded)
{
return;
}
sfToolkit::addIncludePath(sfConfig::get('sf_lib_dir') . '/vendor', 'back');
require_once(sfConfig::get('sf_lib_dir') . '/vendor/Zend/Loader.php');
Zend_Loader::registerAutoload();
self::$zendLoaded = true;
}
Run Code Online (Sandbox Code Playgroud)
并自由使用您可能喜欢的任何Zend组件.您可能对新的Jobeet教程感兴趣,特别是在使用Zend_Lucene_Search的搜索部分.
Symfony 确实易于使用,并且可以在很短的时间内获得一个功能齐全的站点,包括会话、缓存、单元和功能测试、自动化部署以及更多功能。您实际上只需要担心访问和显示数据的代码。虽然它可能不像自行实施那样轻量级,但您必须维护的代码量会更少。
Propel/Creole ORM 运行良好,内置了验证器等,并且设置为可开箱即用的可扩展。
当将内部框架转移到 Symfony 时,我只需将大量库代码放入 Symfony 在启动时扫描的 lib 目录之一即可重用它们。
虽然我没有使用过它,但 Symfony 中内置了一个 Zend 桥,允许您在需要时使用 Zend 模块。
希望有帮助。