{"id":16411293,"url":"https://github.com/zyimm/laravel-query-builder","last_synced_at":"2025-10-26T19:30:40.798Z","repository":{"id":44722848,"uuid":"283708704","full_name":"zyimm/laravel-query-builder","owner":"zyimm","description":"是laravel框架根据已有配置来执行查询条件构造器服务包,再也不把查询写成意大利面条的代码了|Query condition builder service package of laravel framework","archived":false,"fork":false,"pushed_at":"2023-11-06T02:37:21.000Z","size":52,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-31T22:25:41.999Z","etag":null,"topics":["laravel","laravel-query-builder","sql"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zyimm.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2020-07-30T08:04:51.000Z","updated_at":"2021-12-24T07:19:49.000Z","dependencies_parsed_at":"2023-11-06T03:31:02.238Z","dependency_job_id":"10f947c6-3181-408e-8250-b0dd60fe1266","html_url":"https://github.com/zyimm/laravel-query-builder","commit_stats":{"total_commits":27,"total_committers":3,"mean_commits":9.0,"dds":"0.14814814814814814","last_synced_commit":"08ee70912e207cec084ee2e6401343c4a335f5c0"},"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zyimm%2Flaravel-query-builder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zyimm%2Flaravel-query-builder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zyimm%2Flaravel-query-builder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zyimm%2Flaravel-query-builder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zyimm","download_url":"https://codeload.github.com/zyimm/laravel-query-builder/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238386356,"owners_count":19463347,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["laravel","laravel-query-builder","sql"],"created_at":"2024-10-11T06:45:02.842Z","updated_at":"2025-10-26T19:30:40.520Z","avatar_url":"https://github.com/zyimm.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"## laravel-query-builder\r\n\r\n\u003e laravel-query-builder 是laravel框架根据已有配置来执行查询条件构造器服务包,再也不把查询写成意大利面条的代码了。|laravel-query-builder is a service pack of the laravel framework for executing conditional query builders based on existing configurations.\r\n\r\n## Install\u0026安装\r\n```\r\ncomposer require zyimm/laravelquery-builder\r\n```\r\n\r\n## Require\u0026依赖\r\n```json\r\n    {\r\n      \"require\": {\r\n          \"php\": \"\u003e=7.0\",\r\n          \"fideloper/proxy\": \"^4.0\",\r\n          \"laravel/framework\": \"\u003e=5.5\"\r\n        }  \r\n    }   \r\n```\r\n## Usage \u0026 用例\r\n```php\r\n/**\r\n *目前支持条件操作符\r\n    '=',\r\n    '\u003c\u003e',\r\n    '\u003e',\r\n    '\u003e=',\r\n    '\u003c',\r\n    '\u003c=',\r\n    'like',\r\n    'full_like',\r\n    'in',\r\n    'not_in',\r\n    'between',\r\n    'not_between'\r\n**/\r\nuse Illuminate\\Support\\Facades\\DB;\r\nuse zyimm\\query\\build\\QueryWhere;\r\n/**\r\n * @var QueryWhere $build\r\n */\r\n$build = app('QueryWhere');\r\n\r\n//提交过来数据\r\n$data = [\r\n    'log_id' =\u003e 20,\r\n    'user_id'=\u003e 'zyimm',\r\n    'user_name' =\u003e \"zyimm,12\"\r\n];\r\n\r\n//配置数据库字段查询操作\r\n$condition =[\r\n    '=' =\u003e [\r\n        'log_id'\r\n    ],\r\n    'not_in' =\u003e [\r\n        'user_id'\r\n    ],\r\n    'between' =\u003e [\r\n        'user_name'\r\n    ],\r\n    'full_like' =\u003e [\r\n        'user_id'\r\n    ],\r\n    '\u003c\u003e' =\u003e [\r\n        'user_id'\r\n    ],\r\n    '\u003e' =\u003e [\r\n        'user_id'\r\n    ]\r\n];\r\nDB::enableQueryLog();\r\n//model\r\n\\App\\Models\\Log::query()\r\n    -\u003ewhere(function ($query) use ($build, $data, $condition){\r\n        $build-\u003ebuildQueryWhere($data ,$condition, $query);\r\n    })-\u003eget();\r\ndd(DB::getQueryLog());\r\n```\r\n生成SQL查询记录如下截图:\r\n![生成SQL查询记录](http://api.img.zyimm.com/media/20201012/bae11974ff1496f95b2eb9a8dabb7d22.jpg)\r\n\r\n**提示**:  \r\n'in','not_in','between','not_between'标识符支持数组和字符串,字符串可选 ','和'.'作为分隔符。\r\n\r\n## issue\r\n\r\n能力有限！欢迎提出issue,共同学习进步。\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzyimm%2Flaravel-query-builder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzyimm%2Flaravel-query-builder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzyimm%2Flaravel-query-builder/lists"}