tprochazka / array-manager
Fixes issues for PHP 8 in original Mesour ArrayManager.
v1.0.0
2022-07-10 22:33 UTC
Requires
- php: >=7.1.0
Replaces
- mesour/array-manager: 0.0.1
This package is auto-updated.
Last update: 2025-03-11 04:15:11 UTC
README
Searches, updates, inserts and deletes on two dimensional array.
Install
-
With Composer
"require": { "tprochazka/array-manager": "1.0.0" }
Example array
$your_array = array( array('name' => 'John', 'surname' => 'Doe', 'email' => 'john.doe@test.xx'), array('name' => 'John', 'surname' => 'Larson', 'email' => 'peter.larson@test.xx'), array('name' => 'Claude', 'surname' => 'Graves', 'email' => 'claude.graves@test.xx'), array('name' => 'Stuart', 'surname' => 'Norman', 'email' => 'stuart.norman@test.xx'), array('name' => 'Kathy', 'surname' => 'Arnold', 'email' => 'kathy.arnold@test.xx'), array('name' => 'Jan', 'surname' => 'Wilson', 'email' => 'jan.wilson@test.xx'), array('name' => 'Alberta', 'surname' => 'Erickson', 'email' => 'alberta.erickson@test.xx'), array('name' => 'Ada', 'surname' => 'Wells', 'email' => 'ada.wells@test.xx'), array('name' => 'Ethel', 'surname' => 'Figueroa', 'email' => 'ethel.figueroa@test.xx'), array('name' => 'Ian', 'surname' => 'Goodwin', 'email' => 'ian.goodwin@test.xx'), );
Select
$manager = new \Mesour\ArrayManager($your_array); $select = $manager->select(); //set keys sensitive to TRUE (default is FALSE) \Mesour\ArrayManage\Searcher\Condition::setKeysSensitive(); $select->column('*', 'name') ->where('name', 'John', \Mesour\ArrayManage\Searcher\Condition::EQUAL, 'or') ->where('name', 'Max', \Mesour\ArrayManage\Searcher\Condition::EQUAL, 'or') ->where('email', '.xx', \Mesour\ArrayManage\Searcher\Condition::END_WITH, 'and') ->limit(10) ->offset(1) ->orderBy('name', 'ASC'); print_r($select->fetchAll()); print($select->count());
Update
$manager = new \Mesour\ArrayManager($your_array); $manager->update(array( 'name' => 'Matouš' )) ->where('name', 'John', \Mesour\ArrayManage\Searcher\Condition::EQUAL) ->execute(); print_r($your_array); // updated array
Insert
$manager = new \Mesour\ArrayManager($your_array); $manager->insert(array( 'name' => 123 ))->execute(); print_r($your_array); // updated array
Delete
$manager = new \Mesour\ArrayManager($your_array); $manager->delete() ->where('name', 'John', \Mesour\ArrayManage\Searcher\Condition::EQUAL) ->execute(); print_r($your_array); // updated array
Test
$manager = new \Mesour\ArrayManager($your_array); $select = $manager->select(); $select->test();