多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
Medoo 轻量级PHP数据库框架 ## 概述 Medoo 是一个轻量级的 PHP 数据库框架,它提供了一个简单易用的查询构建器,允许开发者以一种优雅的方式与数据库进行交互。Medoo 使用 PDO 扩展来提供数据库抽象层,支持多种数据库系统,如:MySQL、PostgreSQL、SQLite 等。 ## 特点 1. **简洁的语法**:Medoo 提供了简洁的查询构建语法,使得编写 SQL 查询变得直观和容易。 2. **链式操作**:支持链式调用,使得代码更加简洁和易于阅读。 3. **类型安全**:通过 PDO 的参数绑定,Medoo 提供了良好的类型安全。 4. **跨数据库支持**:支持多种数据库类型,让开发者可以轻松切换数据库系统。 5. **易于扩展**:Medoo 的架构设计允许开发者根据需要进行扩展和自定义 ## 基本使用 #### 安装 ```php composer require catfan/medoo ``` #### 使用 ``` <?php /** * @desc medoo.php 描述信息 * @author Tinywan(ShaoBo Wan) * @date 2024/6/29 17:42 */ declare(strict_types=1); require_once __DIR__ . '/../vendor/autoload.php'; use Medoo\Medoo; $database = new Medoo([ 'type' => 'mysql', 'host' => 'dnmp-mysql', 'database' => 'demo', 'username' => 'root', 'password' => '123456' ]); $database->insert('demo_user', [ 'username' => 'Tinywan', 'mobile' => 1366936666 ]); $data = $database->select('demo_user', [ 'username', 'mobile' ], [ 'id' => 72 ]); echo json_encode($data); ``` 打印输出 ``` [{"username":"Tinywan","mobile":"1366936666"}] ``` ## webman使用 #### 安装 安装medoo插件包 ``` composer require webman/medoo ``` #### 配置 配置文件位置在`config/plugin/webman/medoo/database.php` #### 使用 ```php <?php namespace app\controller; use support\Request; use Webman\Medoo\Medoo; class Index { public function index(Request $request) { $user = Medoo::get('user', '*', ['uid' => 1]); return json($user); } } ``` #### 多数据库配置 `config/plugin/webman/medoo/database.php`里新增一个配置,key任意,这里使用的是`resty`。 ```php <?php return [ 'default' => [ 'type' => 'mysql', 'host' => 'localhost', 'database' => 'database', 'username' => 'username', 'password' => 'password', 'charset' => 'utf8mb4', 'collation' => 'utf8mb4_general_ci', 'port' => 3306, 'prefix' => '', 'logging' => false, 'error' => PDO::ERRMODE_EXCEPTION, 'option' => [ PDO::ATTR_CASE => PDO::CASE_NATURAL ], 'command' => [ 'SET SQL_MODE=ANSI_QUOTES' ] ], // 这里新增了一个resty的配置 'resty' => [ 'type' => 'mysql', 'host' => 'localhost', 'database' => 'database', 'username' => 'username', 'password' => 'password', 'charset' => 'utf8mb4', 'collation' => 'utf8mb4_general_ci', 'port' => 3306, 'prefix' => '', 'logging' => false, 'error' => PDO::ERRMODE_EXCEPTION, 'option' => [ PDO::ATTR_CASE => PDO::CASE_NATURAL ], 'command' => [ 'SET SQL_MODE=ANSI_QUOTES' ] ], ]; ``` 使用 ``` $user = Medoo::instance('resty')->get('user', '*', ['uid' => 1]); ``` ## 小结 Medoo 适合于需要快速开发和简单数据库操作的项目。如果你正在寻找一个轻量级且功能强大的 PHP 数据库框架,Medoo 可能是一个不错的选择。 Medoo官方文档:https://medoo.in/api/select