protected function getProp($target, $field)
{
if (is_array($target) && isset($target[$field])) {
return $target[$field];
}
if ($target instanceof Document) {
return $target->get($field);
}
if ($target instanceof Traversable) {
foreach ($target as $i => $val) {
if ($i == $field) {
return $val;
}
}
return false;
}
}