块引用
编辑:
http://blog.fedecarg.com/2008/06/28/a-modular-approach-to-web-development/
以上方法是我正在寻找的。那么有没有php框架可以让我为我的代码创建上面的模块化结构?
编辑:
块引用
我想知道哪个是目前最好的php框架,它是100%模块化的,如joomla组件架构。
在joomla中你所要做的就是在“components”目录下上传一组文件,你可以为joomla添加“任何”类型的复杂功能。
我想从头开始开发php应用程序,我希望我的所有应用程序都具有相同的joomla组件架构。所以我目前正在寻找一个PHP框架。
如果我想做上述事情,那么最好的方法是什么?
我应该选择像codeignitor或zend等php框架吗?但是你看,即使使用它们,假设我必须创建一个新函数,我必须将文件上传到至少3个目录,即控制器,模型和视图。但是你在joomla中看到我所要做的就是上传所有文件,这些文件当然只是一个名为“components”的目录,剩下的就是自动处理了
那么前进的最佳方式是什么?
Shanthi
答案 0 :(得分:0)
Joomla是一个CMS系统AFAIK,因此您无法真正比较PHP框架。
在模块化方面,Zend Framework具有出色的,易于实现的模块结构。
你坐下来为joomla添加复杂的功能,你以正确的结构上传文件,joomla为你做,只要你在ZF的正确结构中创建你的模块文件它也会工作.....
答案 1 :(得分:0)
您的问题与我的问题相同。但它是4个月前。 我试图找出如何创建这样的模块化系统。经过一番搜索,我明白我们应该像你说的那样有一个像'components'这样的目录,并把模块的每个数据放在里面。但我们应该如何使用它们?简单 !。只需创建一个控制您的安装,卸载,定位,设置的处理程序(php文件)。事实上我只解决了其中的3个问题。我认为定位是如此困难,直到现在我都没有这样做。
如果您想要我的解释示例,请告诉我创建它。我会寄给你的。 :)
答案 2 :(得分:0)
我同意Joomla等人作为CMS的不同之处,因此其功能水平高于框架,但当然灵活性较低。
但是你可能想探索Symfony 2和Lithium(Cake 3?)。两者都设计为仅使用PHP 5.3及更高版本,并且都使用PHP中的命名空间功能。我对Lithium做的更少,但在Symfony 2中做的一切都很好(几乎所有东西都是一个插件,使框架模块化,更容易管理。
但是,您永远无法以完全相同的方式比较两个Framework / CMS,因为它们都是为不同的目的而构建和设计的,并且具有不同的约束。
N.B。 Symfony 2或Lithium目前都没有生产。 Symfony的目标是2011年3月,目前还不清楚Lithium的1点哦日期
[编辑] 对于Zend来说,这里有很多答案。需要明确的是,有两种类型的框架(是好的很多和很多),但是简单化就是Full Stack和Glue。
像Zend这样的胶水框架往往是免费且容易的,允许您根据自己的意愿使用某些部件而不是其他部件。因此,虽然名义上的MVC你可以轻松地用V和C实现Zend但不使用M.你可以在控制器等手动编写所有数据库调用。
像Symfony这样的Full Stack意味着你很好地使用了所有你喜不喜欢的东西。在您使用的数据方面,ORM,Doctrine或Propel以及大量的框架由YAML / XML中的配置文件控制。在这方面,Symfony非常像Ruby等人。请注意,这不是对任何一方的推荐或批评。
我认为Joomla是胶水(但不是框架),但是为什么要使用90%构建的东西,然后重写75%呢?哦,是的,因为顾客要求你的老板不知道这些问题,我现在记得。
答案 3 :(得分:0)
如果你真的非常想要一个非常灵活的优秀系统并且性能对你来说不是最重要的一点,那么你应该选择magento,它通过添加xml结构将模块性和灵活性提升到更高的水平。 zend框架,允许您组织所有页面,管理依赖项,重写模型组件等。
但请注意,您想要的表现越多,您就会失去更多的表现。我个人喜欢的框架有codeigniter,但我根据自己的需要设计了自己的...