laykith/easyconnect

一个简单的PDO管理器,用于管理连接并减少非框架PHP脚本中的代码。

1.1.0 2018-11-19 08:27 UTC

This package is auto-updated.

Last update: 2024-09-11 20:06:37 UTC


README

一个简单的PDO管理器,用于管理连接并减少非框架PHP脚本中的代码。

测试

  • SQLite
  • MySQL
  • PostgreSQL

设置

  1. 安装 Composer 并在您的项目中运行 composer require laykith/easyconnect
  2. 开始使用EasyConnect

推荐

  1. 使用 vlucas/phpdotenv,运行 composer require vlucas/phpdotenv
  2. 将 .env 文件添加到 .gitignore

用法

加载类

require __DIR__ . '/vendor/autoload.php';

use EasyConnect\EasyConnect;

//Example configs (Use what you need based on driver)
$config = [
    'driver'   => 'Sqlite',                              //MySQL SQLite pgsql - (Case Insensetive)
    'filepath' => 'absolute/path/to/database/file.db',   //required for: SQLite
    'host'     => 'localhost',                           //required for: MySQL & pgsql
    'port'     => '3306',                                //required for: MySQL & pgsql
    'dbname'   => 'name',                                //required for: MySQL & pgsql
    'username' => 'root',                                //required for: MySQL & pgsql
    'password' => 'password123',                         //required for: MySQL & pgsql
];

//Suggestion: Use vlucas/phpdotenv package to load values
$config = [
    'driver'   => getEnv('database_driver'),     //MySQL SQLite pgsql - (Case Insensetive)
    'filepath' => getEnv('database_filepath'),   //required for: SQLite
    'host'     => getEnv('database_host'),       //required for: MySQL & pgsql
    'port'     => getEnv('database_port'),       //required for: MySQL & pgsql
    'dbname'   => getEnv('database_name'),       //required for: MySQL & pgsql
    'dbname'   => getEnv('database_name'),       //required for: MySQL & pgsql
    'password' => getEnv('password'),            //required for: MySQL & pgsql
];

$database = new EasyConnect($config);

从数据库检索数据

//Example query
$query = 'SELECT * FROM user';

//Params (Optional but highly advised to protect from SQL injections)
$params = [];

//Returns array of results
$result = $database->getData($query, $params);

插入/更新/删除数据

//Insert data
//Query (Required)
$query = 'INSERT INTO user (username, password) VALUES (:username, :password)';

//Params (Optional but highly advised to protect from SQL injections)
$params = [
    ':username' => $_POST['username'],
    ':password' => password_hash($_POST['password'], PASSWORD_BCRYPT),
];

//Insert into Database
$database->setData($query,$params);

检索PDO异常

//Gets the error message if PDO exception was triggered.
$database->getError();

许可证

MIT © André Broman