1. manipulating multidimensional array using array_map
/**
  * Ilterate multidimensional array simplicity
  * @desc modify and manipulate or populate multidimensional array with simple tricks
  * @param array $arr
  * @param function $callback
  * @return Array
  **/
function Map($arr, $callback)
{
  if (!is_callable($callback)) {
    throw new Exception("Callback must be function", 1);
  }

  return array_map(function ($key, $val) use ($callback) {
    return call_user_func($callback, $key, $val);
  }, array_keys($arr), $arr);
}