Skip to content
This repository has been archived by the owner on Jun 20, 2018. It is now read-only.

italolelis/collections

Repository files navigation

Collections

Build Status Scrutinizer Code Quality Code Coverage Latest Stable Version Downloads

Collections Abstraction library for PHP

The Collection library is one of the most useful things that many modern languages has, but for some reason PHP doesn't has a built in collection layer.

For that reason we created Collections, an incredible library that gathers the best of .NET's and Java's collections patterns and unify it with PHP array power.

Take a look and see what we're talking about!!

Install

composer require easyframework/collections

Usage

The Collection Class

The Collection represents the List in .NET language or simply non-associative arrays in php:

  $person1 = new \stdClass();
  $person1->name = 'John';
  $person1->age = 25;
  
  $person2 = new \stdClass();
  $person2->name = 'Maria';
  $person2->age = 30;
  
  $person3 = new \stdClass();
  $person3->name = 'Anderson';
  $person3->age = 15;
     
  $collection = new Collections\Vector();
  $collection->add($person1);
  $collection->add($person2);
  $collection->add($person3);
  
  $collection->filter(function($person){
        return $person->age > 18;
  })->each(function($item){
        echo $item->name; //John and Maria
  });

Contributing

Please see CONTRIBUTING for details.

License

The MIT License (MIT). Please see License File for more information.

Documentation

More information can be found in the online documentation at https://italolelis.gitbooks.io/collections.