zyimm/laravelquery-builder

该包最新版本(v1.0.5)没有提供许可证信息。

laravel 框架查询条件构造器服务包|laravel框架的查询条件构造器服务包

v1.0.5 2022-05-21 07:36 UTC

This package is auto-updated.

Last update: 2024-09-06 04:16:54 UTC


README

laravel-query-builder 是基于已有配置执行查询条件构造器服务包的laravel框架包,从此不再将查询编写成意大利面条式的代码。|laravel-query-builder 是一个基于现有配置执行查询条件构造器的laravel框架服务包。

安装&安装

composer require zyimm/laravelquery-builder

需求&依赖

    {
      "require": {
          "php": ">=7.0",
          "fideloper/proxy": "^4.0",
          "laravel/framework": ">=5.5"
        }  
    }   

用法&用例

/**
 *目前支持条件操作符
    '=',
    '<>',
    '>',
    '>=',
    '<',
    '<=',
    'like',
    'full_like',
    'in',
    'not_in',
    'between',
    'not_between'
**/
use Illuminate\Support\Facades\DB;
use zyimm\query\build\QueryWhere;
/**
 * @var QueryWhere $build
 */
$build = app('QueryWhere');

//提交过来数据
$data = [
    'log_id' => 20,
    'user_id'=> 'zyimm',
    'user_name' => "zyimm,12"
];

//配置数据库字段查询操作
$condition =[
    '=' => [
        'log_id'
    ],
    'not_in' => [
        'user_id'
    ],
    'between' => [
        'user_name'
    ],
    'full_like' => [
        'user_id'
    ],
    '<>' => [
        'user_id'
    ],
    '>' => [
        'user_id'
    ]
];
DB::enableQueryLog();
//model
\App\Models\Log::query()
    ->where(function ($query) use ($build, $data, $condition){
        $build->buildQueryWhere($data ,$condition, $query);
    })->get();
dd(DB::getQueryLog());

生成的SQL查询记录如下截图所示: 生成SQL查询记录

提示:
'in','not_in','between','not_between' 标识符支持数组和字符串,字符串可选 ',' 和 '.' 作为分隔符。

问题

能力有限!欢迎提出问题,共同学习进步。