<?php
function getValue($key, $arr, $default=null) {
$array = $arr;
foreach($pieces as $array_key) {
$array = $array[$array_key];
}
else {
$array = null;
break;
}
}
return is_null($array) ?
$default : $array; }
$testarr = [
['foobar' => 'baz'],
['active' => false]
];
$output = getValue('0.foobar',$testarr,'NOT FOUND');
$output = getValue('0',$testarr,'NOT FOUND');
$output = getValue('1.active',$testarr,'NOT FOUND');
$output = getValue('i.do.not.exist',$testarr,'NOT FOUND');
PD9waHAKICAgZnVuY3Rpb24gZ2V0VmFsdWUoJGtleSwgJGFyciwgJGRlZmF1bHQ9bnVsbCkgewogICAgICAgJHBpZWNlcyA9IGV4cGxvZGUoJy4nLCAka2V5KTsKICAgICAgICRhcnJheSA9ICRhcnI7CiAgICAgICAKICAgICAgIGZvcmVhY2goJHBpZWNlcyBhcyAkYXJyYXlfa2V5KSB7CiAgICAgICAJCiAgICAgICAgICBpZighaXNfbnVsbCgkYXJyYXkpICYmIGlzX2FycmF5KCRhcnJheSkgJiYgYXJyYXlfa2V5X2V4aXN0cygkYXJyYXlfa2V5LCAkYXJyYXkpKSB7IAogICAgICAgICAgICAgICRhcnJheSA9ICRhcnJheVskYXJyYXlfa2V5XTsKICAgICAgICAgIH0KICAgICAgICAgIGVsc2UgewogICAgICAgICAgICAgICRhcnJheSA9IG51bGw7CiAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICB9CiAgICAgICB9CiAgICAgICByZXR1cm4gaXNfbnVsbCgkYXJyYXkpID8gJGRlZmF1bHQgOiAkYXJyYXk7CiAgIH0KICAgCiAgICR0ZXN0YXJyID0gWwogICAJICAgIFsnZm9vYmFyJyA9PiAnYmF6J10sCiAgIAkgICAgWydhY3RpdmUnID0+IGZhbHNlXQogICAJXTsKICAgJG91dHB1dCA9IGdldFZhbHVlKCcwLmZvb2JhcicsJHRlc3RhcnIsJ05PVCBGT1VORCcpOwogICB2YXJfZHVtcCgkb3V0cHV0KTsKICAgJG91dHB1dCA9IGdldFZhbHVlKCcwJywkdGVzdGFyciwnTk9UIEZPVU5EJyk7CiAgIHZhcl9kdW1wKCRvdXRwdXQpOwogICAkb3V0cHV0ID0gZ2V0VmFsdWUoJzEuYWN0aXZlJywkdGVzdGFyciwnTk9UIEZPVU5EJyk7CiAgIHZhcl9kdW1wKCRvdXRwdXQpOwogICAkb3V0cHV0ID0gZ2V0VmFsdWUoJ2kuZG8ubm90LmV4aXN0JywkdGVzdGFyciwnTk9UIEZPVU5EJyk7CiAgIHZhcl9kdW1wKCRvdXRwdXQpOwo=