public extractByKey ( Traversable $iterator, string $key ) : mixed | ||
$iterator | Traversable | |
$key | string | |
return | mixed | NULL or whatever we found at $key |
public function extractByKey($iterator, $key)
{
if (false === is_array($iterator) && false === $iterator instanceof \Traversable) {
throw new \Exception('Traversable object or array expected but received ' . gettype($iterator), 1361532490);
}
$result = ObjectAccess::getPropertyPath($iterator, $key);
return $result;
}
/** * @test * @dataProvider simpleStructures */ public function extractByKeyExtractsKeyByPath($structure, $key, $expected) { $this->assertSame($expected, $this->fixture->extractByKey($structure, $key)); }