anker456/simple-pdo

为微 PHP 框架提供的简单 Pdo 库

v1.0.0 2020-05-03 08:49 UTC

This package is auto-updated.

Last update: 2024-09-29 05:20:56 UTC


README

为微 PHP 框架提供的简单 Pdo 库。
它可以用于 CRUD。它支持读写分离。

##使用方法

导入包

composer require anker456/simple-pdo

###在您的引导文件中添加以下代码(例如 index.php)

use \Anker456\PDO\Model;

Model::config(require_once __DIR__ . '/app/config/db.php');

配置文件 db.php 如下

return [
    'host' => '127.0.0.1',
    'port' => 3306,
    'dbname' => 'mysql_test',
    'options' => null,
    'username' => 'root',
    'password' => '',
];

如果您的读写数据库不同,可以配置如下

return [
    'read' => [
        [
            'host' => '127.0.0.1',
            'port' => 3307,
            'dbname' => 'mysql_test',
            'options' => null,
            'username' => 'root',
            'password' => '',
        ],
        [
            'host' => '127.0.0.1',
            'port' => 3308,
            'dbname' => 'mysql_test',
            'options' => null,
            'username' => 'root',
            'password' => '',
        ]
    ],
    'write' => [
        [
            'host' => '127.0.0.1',
            'port' => 3306,
            'dbname' => 'mysql_test',
            'options' => null,
            'username' => 'root',
            'password' => '',
        ]
    ]
];

请注意,读写默认是存在的。如果您使用写,则必须使用读。读写可以是相同的。
可以读写分离,只是必须读和写的节点必须同时存在,可以相同。

##添加模型文件(例如 Users.php)
模型应该且仅继承 Anker456\PDO\Model。您不需要编写更多的代码。因此,它很简单。

namespace App;
use Anker456\PDO\Model;
/**
 * Class User
 * @package App
 */
class User extends Model
{
}

然后您的控制器可以使用用户模型。您可以在 demo/UserController.php 中看到示例。例如。

$sql = "select * from users where id = ?";
$conditions = [$id];
$result = User::first($sql, $conditions);
var_dump($result);