Помогите написать функцию foreach чтоб обходила массив и каждый раз возращала массив . Хочу понять как это работает и сам потом в качестве обучения поиграюсь .
PHP:
<?php function getKeyVals($arr, $key) { foreach ($arr as $k => $v) { if ($k === $key) { yield $v; } foreach (getKeyVals($v, $key) as $v2) { yield $v2; } } } } $data = [ [ ‘name’ => ‘A’, ‘value’ => 1 ], [ ‘name’ => ‘B’, ‘value’ => 2 ], [ ‘name’ => ‘C’, ‘value’ => [ ‘name’ => ‘X1’, ‘value’ => 3 ], [ ‘name’ => ‘X2’, ‘value’ => 4 ], [ ‘name’ => ‘x3’, ‘value’ => 5 ], ] ];Думаю можно сделать через for , но это он будет бесконечно же так вызывать как я понимаю