2008-08-11 41 views
10

我繼承了一個老頑固的PHP application,我想重構它到一個更好的處理,但在一個漸進的方式。在perl的CPAN中,圍繞Class :: DBI提供了一系列類,它們允許您在代碼中使用數據庫行作爲對象的基礎,並根據需要生成accessor methods等,但也允許您添加其他方法。Class :: DBI類似的庫爲PHP?

有誰知道這樣的PHP的東西?尤其是那些不需要批量採用「框架」的東西......如果它也適用於PHP4,也可以實現,但說實話,我希望有另一個理由來拋棄它。 :-)

回答

3

它現在已經失效,但phpdbi是值得一看。如果你願意放下一些注意事項(框架之一),我發現Doctrine是訪問PHP中數據庫的一種非常簡潔的方式。無論如何值得調查。

0

正確的做法是通過抽象層訪問數據庫,例如,如果更改RDBMS或實現該訪問,只需修改此層,而應用程序的所有其餘部分仍保持不變。

要做到這一點,爲了讓您的應用程序不知道如何處理數據庫,您的數據庫訪問抽象層必須由框架(如ADODB)實現。

所有與此相關的層文件必須位於一個子目錄:

  • /結結實實

在這個目錄中,你會把所有的.php.inc文件包含訪問數據庫的一般方法。

0

MDB2如何從梨?

它爲所有支持RDBMS的 提供了一個通用API。與大多數其他DB抽象包 的主要區別 是MDB2更進一步到 確保可移植性。

btw:@GaryF什麼是你的鏈接有那些奇怪的標題屬性?你添加了它們還是被添加了?

1

Class :: DBI是perl的ORM (Object Relational Mapper)。在google上搜索「PHP ORM」會帶來一些好的結果,包括Doctrin,這是我的好運。我會先從那裏開始工作。

1

我試圖讓我自己的項目更多的反饋,所以我會建議在ORM我的看法:ORMer

用法的例子是here

您可以在第一階段,它不要求你採用MVC,而且它只需要很少的設置。