for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
/**
* Created for IG Client.
* User: jakim <[email protected]>
* Date: 14.03.2018
*/
namespace Jakim\Helper;
class ArrayHelper
{
public static function getValue($array, $key, $default = null)
if ($key instanceof \Closure) {
return $key($array, $default);
}
if (is_array($array) && (isset($array[$key]) || array_key_exists($key, $array))) {
return $array[$key];
if (($pos = strrpos($key, '.')) !== false) {
$array = static::getValue($array, substr($key, 0, $pos), $default);
$key = substr($key, $pos + 1);
if (is_object($array)) {
return $array->$key;
} elseif (is_array($array)) {
return (isset($array[$key]) || array_key_exists($key, $array)) ? $array[$key] : $default;
return $default;
public static function getColumn($array, $name)
$result = [];
foreach ($array as $k => $element) {
$result[$k] = static::getValue($element, $name);
return $result;