itlessons/php-database

0.0.1 2015-01-09 22:31 UTC

This package is not auto-updated.

Last update: 2024-09-24 04:14:54 UTC


README

这是一个非常简单的PHP数据库工具包,提供简单的pdo包装连接和查询构建器。目前支持MySQL。为学习而创建。但您也可以在真实项目中使用它。代码来自Laravel数据库层并进行了简化。

用法

首先,创建一个新的管理器实例。

use Database\Manager;

$manager = new Manager;

$manager->addConnection([
    'dsn' => 'mysql:dbname=testdb;host=127.0.0.1',
    'username' => 'root',
    'password' => null,
    'options' => [] // pdo driver options 
]);

一旦管理器实例已被注册,您可以像这样使用它

使用连接

$conn = $manager->getConnection();
$data = $conn->queryAll('select * from users where id in (?,?,?)', 1, 2, 3);
// $data -> [['id' => 1, 'name' => 'joe'], ...]

$conn->exec('insert into users (id, name) values (?, ?)', 1, 'joe'));

$conn->execBatch(file_get_contents('file_with_queries.txt'));

使用查询构建器

$data = $manager
            ->query('users')
            ->select('*')
            ->whereIn('id', [1,2,3])
            ->execute();

// $data -> [['id' => 1, 'name' => 'joe'], ...]


$data = $manager
            ->query('users')
            ->update(['votes' => 2])
            ->where('id', 1)
            ->toSql();
// $data -> ['update `user` set `votes` = ? where `id` = ?',[2,1]]
            
$data = $manager
          ->query('users')
          ->insert([
              ['email' => 'john@example.com', 'votes' => 0],
              ['email' => 'john1@example.com', 'votes' => 1]
          ])->execute();

有关查询构建器的更多信息,请参阅 QueryBuilderTest

安装

推荐通过 Composer 安装 php-database。只需创建一个 composer.json 文件,然后运行 php composer.phar install 命令即可安装它

{
    "require": {
        "itlessons/php-database": "*"
    }
}

或者,您可以下载 php-database.zip 文件并将其解压。

资源

您可以使用以下命令运行单元测试

$ cd path/to/php-database/
$ composer.phar install
$ phpunit

链接