alexeyshockov/colada-x 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

alexeyshockov/colada-x

最新稳定版本:v0.3.0

Composer 安装命令:

composer require alexeyshockov/colada-x

包简介

Helper function for simplification callbacks

README 文档

README

Helper function for simplify callbacks.

Latest Stable Version Scrutinizer Code Quality Build Status

Installation

$ composer require alexeyshockov/colada-x

Usage

With ColadaX:

$activeUsers = array_filter($users, \Colada\x()->isActive());
$role = 'ADMIN';
$administrators = array_filter($users, \Colada\x()->hasRole($role));

Instead of pure PHP:

$activeUsers = array_filter($users, function ($user) {
    return $user->isActive();
});
$role = 'ADMIN';
$activeUsers = array_filter($users, function ($user) use ($role) {
    return $user->hasRole($role);
});

Useful together

Some code examples for your imagination.

Laravel 5 Collections

$activeUsers = $users->filter(\Colada\x()->isActive());

PHP Collection (schmittjoh/php-collection)

$activeUsers = $users->filter(\Colada\x()->isActive());

functional-php (lstrojny/functional-php)

The library already has partial_method function, but it's less powerful.

use Functional as F;

$activeUsers = F\select($users, \Colada\x()->isActive());

Less useful, but still

Doctrine 2 Collections (Symfony 2, Doctine 2 ORM, etc.)

// __asClosure() is needed because all Doctrine's methods accept only \Closure instances :(
$hasActiveUsers = $users->exists(\Colada\x()->isActive()->__asClosure());

Laravel 4 Collections

The same problem as described above with Doctrine.

Alernatives

If you need only the basic functionaly, take a look at invoke(), invoke_first(), invoke_if(), invoke_last(), invoker() from a great functional-php library.

统计信息

  • 总下载量: 391
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 1
  • 点击次数: 0
  • 依赖项目数: 1
  • 推荐数: 2

GitHub 信息

  • Stars: 1
  • Watchers: 1
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2015-06-10