cviebrock/twig-group

将数组分割成指定数量的组的 Twig 过滤器(与按组内项目数分割的 batch 不同)

1.0.0 2015-03-17 19:32 UTC

This package is auto-updated.

Last update: 2024-09-05 18:34:13 UTC


README

将数组分割成指定数量的组的 Twig 过滤器。这不同于内置的 batch 过滤器,后者根据每组的项目数来分割数组。

Total Downloads Latest Stable Version

安装

该过滤器在 Packagist 上注册为 cviebrock/twig-group,可以使用 composer 进行安装

composer require cviebrock/twig-group

或者直接下载 zip 文件并将文件复制到您的 src 文件夹中。

启用扩展

$twig = new Twig_Environment($loader, $options);
$twig->addExtension(new Cviebrock\Twig\GroupExtension());

如果您正在使用 Laravel 以及 rcrowe/twigbridge,则通过向 app/config/packages/rcrowe/twigbridge/extensions.php 中的 enabled 数组中添加条目来启用扩展

'enabled' => [
	...
	'Cviebrock\Twig\GroupExtension',
],

用法

假设我们从以下数组开始

[ 'John', 'Jane', 'Bill', 'Bob', 'Mary' ]

将数组和组数传递给过滤器

{{ array | group(2) }}          // [ ['John', 'Jane', 'Bill'], ['Bob', 'Mary'] ]

{{ array | group(3) }}          // [ ['John', 'Jane'], ['Bill', 'Bob'], ['Mary'] ]

可选地传递第二个参数,这将填充所有数组,使它们具有相同数量的元素(类似于内置的 batch 过滤器填充数组的方式)

{{ array | group(2, '-empty-') }}          // [ ['John', 'Jane', 'Bill'], ['Bob', 'Mary', '-empty-'] ]

{{ array | group(3, '-empty-') }}          // [ ['John', 'Jane'], ['Bill', 'Bob'], ['Mary', '-empty-'] ]

错误、建议和贡献

请使用 Github 进行错误、评论和建议。

  1. 分支项目。
  2. 创建您的错误修复/功能分支并编写您的(注释良好的)代码。
  3. 提交您的更改并将其推送到您的仓库。
  4. 创建一个针对此项目 master 分支的新 pull request。

版权和许可

twig-group 由 Colin Viebrock 编写并发布,遵循 MIT 许可证。有关详细信息,请参阅 LICENSE 文件。

版权 2015 Colin Viebrock