12

我继承了一个旧的硬壳PHP application,我想将它重构为更好处理的东西,但要循序渐进。在 perl 的 CPAN 中,围绕 Class::DBI 有一系列类,它们允许您使用数据库行作为代码中对象的基础,并根据需要生成库accessor methods等,还允许您添加其他方法。

有谁知道这样的PHP?尤其是不需要大规模采用“框架”的东西……如果它也可以在 PHP4 中工作,那么可以加分,但老实说,我很想有另一个理由放弃它。:-)

4

5 回答 5

4

它现在已经不存在了,但phpdbi可能值得一看。如果您愿意放弃一些警告(框架警告),我发现Doctrine是一种在 PHP 中访问数据库的非常简洁的方法。无论如何都值得研究。

于 2008-08-11T22:40:02.893 回答
1

Class::DBI 是 perl 的ORM(对象关系映射器)。在 google 上搜索“PHP ORM”会得到一些不错的结果,包括Doctrin,我很幸运。我会从那里开始,然后一路向上。

于 2008-08-28T17:56:45.567 回答
1

我正在尝试获得更多关于我自己的项目的反馈,所以我会建议我对 ORM 的看法: ORMer

用法示例在这里

你可以分阶段使用它,它不需要你采用 MVC,而且它只需要很少的设置。

于 2008-09-09T18:50:55.633 回答
0

正确的做法是通过抽象层访问数据库,如果您更改 RDBMS 或实现该访问的方式,您只需修改该层,而应用程序的所有其余部分保持不变。

为此,为了让您的应用程序无需知道如何处理数据库,您的 DB 访问抽象层必须由ADODB等框架实现。

所有与该层相关的文件必须位于一个子目录中:

  • /ado

在此目录中,您将放置所有 .php.inc 文件,其中包含访问数据库的一般方法。

于 2008-08-11T23:34:10.243 回答
0

梨的MDB2怎么样?

它为所有受支持的 RDBMS 提供通用 API。与大多数其他 DB 抽象包的主要区别在于 MDB2 进一步确保了可移植性。

顺便说一句:@GaryF 你的链接有什么奇怪的标题属性?您是添加它们还是它们是由 SO 添加的?

于 2008-08-12T21:47:16.150 回答