Ниже кода, который работает должным образом, прежде чем я попытаюсь использовать key
во время итерации. При этом я вижу ошибку: «Разрешен объем памяти 1073741824 байт исчерпан (попытался выделить 9223372043239833600 байт)». Посмотрите на необходимый объем памяти, это выглядит чудовищно.
getModules
возвращает ассоциативный массив, $id
- это string
.
Есть идеи о возможных причинах?
foreach (Yii::$app->getModules() as $id => $module) {
echo '';
var_dump(gettype($module));
if (gettype($module) =='array') {
var_dump($module);
} else if (gettype($module) =='object') {
var_dump(get_class($module));
}
//var_dump($id); // <-- We have problems when try to uncomment this
echo '</pre> '; }
php -v
:
PHP 7.0.33-25+0~20200225.32+debian9~1.gbpa11893 (cli) (built: Feb 25 2020 13:16:41) ( NTS )
Copyright (c) 1997-2017 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies
with Zend OPcache v7.0.33-25+0~20200225.32+debian9~1.gbpa11893, Copyright (c) 1999-2017, by Zend Technologies
ОБНОВЛЕНО: Я только что открыл и сохранил массив модулей через s sh, и ошибка исчезла. Я не догадываюсь, что это было. Выглядит как глюк SSD.