neftaio / laravel-jmespath
1.0.8
2022-08-11 21:49 UTC
Requires
- php: >=8.0.2
- illuminate/config: 9.*
- illuminate/console: 9.*
- illuminate/container: 9.*
- illuminate/filesystem: 9.*
- illuminate/support: 9.*
- mtdowling/jmespath.php: ~2.6
README
这是一个Laravel 8的包装器,用于使用jmespath.php库。jmespath.php库是对JMESPath规范的实现。
此包还提供了Artisan命令来预编译和管理您的JMESPath表达式。
感谢libtek开发libtek/laravel-jmespath和ofumbi开发ofumbi/laravel-jmespath的包。
请谨慎使用此包,实际上,我只更新了依赖项,以便您可以在我的项目中安装。
安装
通过composer安装
$ composer require neftaio/laravel-jmespath
添加服务提供者
在config/app.php
中,将服务提供者添加到$providers
数组中
'providers' => [ // ... Neftaio\Jmes\JmesServiceProvider::class, ],
添加别名
在config/app.php
中,将外观添加到$aliases
数组中
'aliases' => [ // ... 'Jmes' => Neftaio\Jmes\Facades\Jmes::class, ],
发布配置文件
如果您想修改默认配置值或定义要预编译的表达式,请发布包配置文件
php artisan vendor:publish --provider="Neftaio\Jmes\JmesServiceProvider"
这将在您的config
目录中创建一个jmes.php
文件。
使用方法
使用外观
$result = Jmes::search($expression, $data);
辅助函数
$result = jmes($expression, $data);
搜索集合:// 返回数组或字符串
$names = collect($data); $result = $names->search($expression);
Artisan命令
此包提供了两个Artisan命令
jmes:compile
此命令编译并缓存JMESPath表达式。表达式可以通过多种方式获取
-
不传递任何选项或参数运行命令将在
jmes.php
配置文件中查找表达式php artisan jmes:compile
-
将单个表达式传递给命令
php artisan jmes:compile 'foo.*.baz'
-
设置
-c
或--cli
选项将提示手动添加表达式php artisan jmes:compile --cli Please enter a JMESPath expression: > foo.*.baz
jmes:clear
此命令将删除之前编译过的表达式
php artisan jmes:clear
传递-h
或--help
给任一命令以查看其用法。