#php #xampp #nette
#php #xampp #nette
Вопрос:
после обновления PHP с версии 7.3 до версии 7.4.6. все, что у меня есть в Nette, выдает это сообщение: Trying to access array offset on value of type bool
В PHP 7.3. у меня все работало (даже более сложные проекты). Проверка на 100% в порядке. По совету форума Nette я также обновил Nette до версии 3.0, но она все та же. Где мне следует искать ошибку?
Notice
Trying to access array offset on value of type bool search► skip error►
Source file
File: ...vendornettedisrcDIContainerLoader.php:109
99: throw new NetteIOException("Unable to include '$file'.");
100: }
101: flock($handle, LOCK_UN);
102: }
103:
104:
105: private function isExpired($file, amp;$updatedMeta = null)
106: {
107: if ($this->autoRebuild) {
108: $meta = @unserialize((string) file_get_contents("$file.meta")); // @ - file may not exist
**109: $orig = $meta[2];**
110: return empty($meta[0])
111: || DependencyChecker::isExpired(...$meta)
112: || ($orig !== $meta[2] amp;amp; $updatedMeta = serialize($meta));
113: }
Call stack
...vendornettedisrcDIContainerLoader.php:68 source NetteDIContainerLoader->isExpired(arguments)
...vendornettedisrcDIContainerLoader.php:47 source NetteDIContainerLoader->loadFile(arguments)
...nettebootstrapsrcBootstrapConfigurator.php:267 source NetteDIContainerLoader->load(arguments)
...nettebootstrapsrcBootstrapConfigurator.php:242 source NetteConfigurator->loadContainer()
C:xampphtdocshello-worldappbootstrap.php:20 source NetteConfigurator->createContainer()
C:xampphtdocshello-worldwwwindex.php:3 source require(arguments)
Variables
Exception
Environment
HTTP request
HTTP response
Report generated at 2020/08/23 03:10:12
http://localhost/hello-world/
PHP 7.4.6
Apache/2.4.43 (Win64) OpenSSL/1.1.1g PHP/7.4.6
Tracy 2.5.2
Вот изображение стека ошибок.
Ответ №1:
Похоже, что unserialize
функция завершилась с ошибкой, поэтому она вернулась false
. И когда строка после него пытается использовать индекс, она прерывается.
Заглядывая в nette/di
репозиторий, это было исправлено в nette/di
версии 3.0.1. Убедитесь, что вы обновили и эту зависимость.