libtek/laravel-jmespath

jmespath.php 服务提供者,用于 Laravel 5

dev-master 2015-11-27 21:47 UTC

This package is not auto-updated.

Last update: 2024-09-28 17:18:00 UTC


README

一个用于 Laravel 5 的jmespath.php 库包装器。jmespath.php 库是对 JMESPath 规范的实现。

此包还提供了 Artisan 命令来预编译和管理您的 JMESPath 表达式。

安装

通过 composer 安装

$ composer require libtek/laravel-jmespath

添加服务提供者

config/app.php 中,将服务提供者添加到 $providers 数组中

'providers' => [
    // ...
    Libtek\Jmes\JmesServiceProvider::class,
],

添加别名

config/app.php 中,将外观添加到 $aliases 数组中

'aliases' => [
    // ...
    'Jmes' => Libtek\Jmes\Facades\Jmes::class,
],

发布配置文件

如果您想修改默认配置值或定义预编译的表达式,请发布包配置文件

php artisan vendor:publish --provider="Libtek\Jmes\JmesServiceProvider"

这将在您的 config 目录中创建一个 jmes.php 文件。

使用方法

使用外观

$result = Jmes::search($expression, $data);

辅助函数

$result = jmes($expression, $data);

Artisan 命令

此包提供了两个 Artisan 命令

jmes:compile

此命令编译并缓存 JMESPath 表达式。表达式可以通过多种方式获取

  1. 不使用选项或参数运行命令将在 jmes.php 配置文件中查找表达式

    php artisan jmes:compile
  2. 向命令传递单个表达式

    php artisan jmes:compile 'foo.*.baz'
  3. 设置 -c--cli 选项将提示手动添加表达式

    php artisan jmes:compile --cli
    
     Please enter a JMESPath expression:
     > foo.*.baz

jmes:clear

这将删除之前编译过的所有表达式

php artisan jmes:clear

通过传递 -h--help 到任一命令来查看其用法。