用一个最小化依赖的PHP框架来编写PHP应用程序的最好方法是什么?


Whats the best way to code PHP application with a PHP framework that minimises dependencies

我是PHP开发(实际上是所有web开发)的新手,我正在研究针对MVC PHP框架编写代码的最佳方法。我想知道的是,是否有一种成熟的技术来使用PHP框架编写应用程序,但将依赖性降到最低,这样,如果你想从一个框架转移到另一个框架,你可以用最小的努力做到这一点,而不必从头再来。这类似于我在数据库中看到的另一种技术——Doctrine,你可以使用它提供一个通用的数据库层,这样你就不会对MySQL或SQLServer等有很强的依赖,所以你可以轻松地在它们之间切换。我正在考虑的PHP框架是ZendFramework, Symfony &CakePHP .

作为一个c++/c#开发人员,我的本能是开发一组通用的包装类,它们的工作是与框架接口,这样所有其余的代码都不依赖于任何一个PHP框架,但是如果已经有一个库提供了这个,我不想这样做。希望这对你有意义。

实际上,我问的是:"是否有一个与PHP框架等同的原则?"

No。没有。

框架的全部意义在于为您提供一堆东西,使您的生活更轻松,并允许您编写更少的代码。这是通过使用框架的特性来实现的——也就是说,让你的应用程序依赖于框架。每个框架都是不同的。

让你的应用不依赖框架的唯一方法就是不使用框架——这是一种愚蠢的方法,因为它只会给你带来更多的工作。

我从未听说过Doctrine,但如果我理解正确的话,这是一个完全不同的场景。MySQL, PostGres, SQL Server等都是为了实现同样的东西- SQL。在语法上存在微小差异的情况下,抽象层可以解释这些差异,从而允许您轻松地在数据库之间切换。如果一个人实现了另一个人根本不具备的特性,抽象层就无能为力了。

与SQL的实现不同,框架没有任何商定的标准集,因此在它们之间轻松切换的方法实际上是不可能的。