Как динамически перемещаться по глобальному массиву, не создавая его копию?

Что произойдет, если это очень большой массив? Можно было бы попытаться сохранить память. В следующем примере копируются части массива, но это не обязательно, поскольку массив является глобальной переменной.

function arrayTraverse($key) {
global $someArray;
$keys = func_get_args();
$arrayPart = $someArray;

foreach ($keys as $key) {
$arrayPart = $arrayCopy[$key];
}

$value = $arrayPart;
return $value;
}

Пример использования:

$someArray = [];
$someArray['aKey'] = [];
$someArray['aKey']['someOtherKey'] = [];
$someArray['aKey']['someOtherKey'][5] = [];
$someArray['aKey']['someOtherKey'][5]['value'] = 'hello';
echo arrayTraverse('aKey', 'someOtherKey', 5, 'value'); // hello

2

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]