我是PHP开发的新手(实际上是所有的Web开发,并且正在进行一些针对MVC PHP框架编写代码的最佳方法的研究。我想知道的是,是否有一种已建立的技术来编写代码使用PHP框架但最小化依赖性的应用程序,这样如果你想从1个框架移动到另一个框架,你可以用最少的努力而不必重新开始。这类似于我见过的另一种技术数据库 - 您可以使用的Doctrine,它提供了一个您编写代码的通用数据库层,这样您就没有强大的依赖关系来说MySQL或SQLServer等,因此您可以轻松地在它们之间切换。我正在使用的PHP框架是ZendFramework,Symfony& CakePHP。
作为一名C ++ / C#开发人员,我的本能是开发一组通用的包装器类,它的作用是与框架接口,这样所有其余的代码都不依赖于任何1个PHP框架,但我如果已经有一个提供此功能的库,则不想这样做。希望这是有道理的。
实际上,我要问的是:“PHP框架是否有一个等同的学说?”
答案 0 :(得分:3)
没有。没有。
Frameworks的重点是为您提供一系列东西,让您的生活更轻松,并允许您编写更少的代码。这通过使用框架的功能发生 - 即,使您的应用程序依赖于框架。每个框架都不同。
让你的应用程序不依赖于框架的唯一方法就是不使用它 - 这是一种愚蠢的方法,因为它只是意味着更多的工作。
我从来没有听说过Doctrine,但如果我理解正确,那就完全不同了。 MySQL,PostGres,SQL Server等都是实现同样的东西 - SQL。如果sytax存在细微差别,抽象层可以解释这些差异,从而允许您轻松地在数据库之间切换。如果一个人实现了另一个根本没有的功能,那么抽象层就无法提供帮助。
与SQL的实现不同,框架没有任何一致的标准集,因此实际上很难在它们之间切换的方法。