我正在使用MySQL和PHP5。我了解到古老mysql_*
的功能已不再维护,社区已开始弃用。所以我决定离开mysql_*
。问题是去哪里?我正在寻找更轻、更简单、更快捷的方法。有人告诉我这些 (mysqli
和PDO
) 是哪个;
- 快点
- 易于学习和编码
- 占用更少的空间和内存
注意:这两个初学者级别的教程链接会有所帮助。
PDO和MySQLi都提供了面向对象的 API,但 MySQLi 还提供了过程API——这使得新手更容易理解。如果您熟悉原生 PHP MySQL 驱动程序,您会发现迁移到程序化 MySQLi 界面要容易得多。另一方面,一旦您掌握了 PDO,您就可以将它与您想要的任何数据库一起使用!
最终,PDO轻松赢得了这场战斗。通过支持十二种不同的数据库驱动程序(十八种不同的数据库!)和命名参数,我们可以忽略小的性能损失,并习惯它的 API。从安全的角度来看,只要开发人员以应有的方式使用它们,它们都是安全的。
因此,如果您仍在使用 MySQLi,也许是时候做出改变了!
PDO 与 MySQLi:您应该使用哪个?——德扬·马里亚诺维奇
希望这可以帮助 。
除了上面的问题,这里还有一张对比图;
为什么你应该使用 PHP 的 PDO 进行数据库访问的信息非常有帮助。
About Performance
While both PDO and MySQLi are quite fast, MySQLi performs insignificantly faster in benchmarks - ~2.5% for non-prepared statements, and ~6.5% for prepared ones. The MySQL extension was even faster.