什么是最好的PHP MYSQL包装器?

时间:2010-04-28 08:35:10

标签: php mysql

我已经在不同的包装器之间蹦蹦跳跳,我自己,并且多年来使用直接的php mysql函数,但我确信那里有一个非常好的解决方案。它是什么? :)

编辑:只需要连接到MYSQL。

8 个答案:

答案 0 :(得分:6)

一个非常主观的问题,你能否优先考虑你的要求......它必须是轻量级,便携式(对其他数据库)等吗?

我通常使用ADODB,这不仅仅是因为它提供了很好的数据库抽象,因此非常便携。

答案 1 :(得分:5)

对于较大的项目,我通常使用Doctrine作为对象关系映射器。它还提供了“普通”SQL查询的抽象,但它可以做更多。

它绝对可以使开发变得更加轻松。最后,您可以开发复杂的应用程序,而无需单行SQL代码。

对于Doctrine只是矫枉过正的小脚本,我只是坚持使用PDO内置的PHP。

答案 2 :(得分:4)

我将PDO与自己的包装器一起使用。 之前我使用goBD用于MySQL(扩展MySQLi),但所有文档都只是俄语。

答案 3 :(得分:3)

自2018年起,我建议使用medoo。它是积极开发和维护的(MIT许可证)。它非常易于使用,也适合复杂的要求。它负责SQL注入,因此开发人员可以专注于功能。

Github-https://github.com/catfan/Medoo |网站-https://medoo.in

它支持-MySQL,MariaDB,MSSQL,Oracle,SQLite,PostgreSQL,Sybase

require 'vendor/autoload.php';     
// Using Medoo namespace
use Medoo\Medoo;

连接

$database = new Medoo([
    // required
    'database_type' => 'mysql',
    'database_name' => 'name',
    'server' => 'localhost',
    'username' => 'your_username',
    'password' => 'your_password']);

要插入

$database->insert("account", [
    "user_name" => "foo",
    "email" => "foo@bar.com"
]);

要选择

$datas = $database->select("account", [
    "user_name",
    "email"
], [
    "user_id[>]" => 100
]);

答案 4 :(得分:1)

如果您只想要MySQL,那么Zebra_Database很轻,有一个壮观的调试控制台,用于显示您运行的查询的详细信息,可以将查询结果缓存到磁盘或memcache,并且很容易学习和使用。

答案 5 :(得分:0)

我只使用我的own simple wrapper here ..

没有有趣的东西......没有复杂性..只是一个简单的单例php-mysql包装类。

我也有例子。

看一看..它是免费的,非常实用。

答案 6 :(得分:0)

我建议我的AMysql库受到PDO,mysqli和Zend Framework 1所有优点的启发,但使用mysql_*函数。

https://github.com/amcsi/amysql

它支持PHP 5.2.4+,可以做命名和未命名的客户端预备语句。它对于制作select语句没有太大的魔力,但是它对删除,更新和插入(在同一个调用中可以进行多次插入和更新)并且非常适合让你定义你想要如何接收你的结果通过选择。

它也可以由作曲家安装。这是包装页面:https://packagist.org/packages/amcsi/amysql

答案 7 :(得分:0)

我发现了一个名为Epiphany的真正好的框架。数据库包装器非常易于使用或添加。文档也很棒。如果您正在寻找轻量级解决方案,我建议使用此框架,或者至少检查EpiDatabase.php文件。

https://github.com/jmathai/epiphany

如果您需要具有更多功能的东西,接下来我会推荐Yii Framework,如果不能削减它,那么Zend Framework。只是涉及那些数据库包装器,你会找到一个你喜欢的。

http://www.yiiframework.com/

http://framework.zend.com/