kozz/array-updater

Library allows easily update multidimensional arrays

1.2.1 2015-01-14 11:31 UTC

This package is not auto-updated.

Last update: 2024-03-25 23:56:17 UTC


README

Build Status Coverage Status Scrutinizer Code Quality Latest Stable Version Latest Unstable Version License

Recursive Array Updater

Update One

  $source = ['this' => ['is' => ['the' => ['path' => [
    1,2,3,4,5
  ]]]]];
  
  $array = 
    ArrayUpdater::from($source)
    ->node('this')->node('is')->node('the')->node('path')->all()
    ->replace(1, 100);
  
  /**
   * $array = ['this' => ['is' => ['the' => ['path' => [
   *   100,2,3,4,5
   * ]]]]];
   */
  

Update Multiple

  $source = ['this' => [
    ['the' => ['path' => [
      1,2,3,4,5
    ]]],
    ['the' => ['path' => [
      1,2,3,4,5
    ]]]
  ]];
  
  $array = 
    ArrayUpdater::from($array)
    ->node('this')->all()->node('the')->node('path')->all()
    ->replaceAssoc([1=>100, 3=>300]);
  
  /**
   *
   * $array = ['this' => [
   *  ['the' => ['path' => [
   *    100,2,300,4,5
   *  ]]],
   *  ['the' => ['path' => [
   *    100,2,300,4,5
   *  ]]]
   * ]];
   */
   *