我遇到了一个看起来很小但我无法解决的问题。这可能很愚蠢,但我找不到任何解决方案。
我正在我的 PC 上使用 PHP 7.1 开发 Symfony 3 应用程序。一切正常。我尝试将其上传到使用 PHP 7.0 的主机服务器上。
当我启动网站时,我收到此错误消息:
致命错误:未捕获的类型错误:Doctrine\Common\Annotations\AnnotationRegistry::registerLoader() 的返回值必须是 Doctrine\Common\Annotations\void 的一个实例,在 /home/clients/fb3f5a508aeeb6d39e6d7e1e47bda9ac/vendor/doctrine 中没有返回lib/Doctrine/Common/Annotations/AnnotationRegistry.php:117 堆栈跟踪:#0 /home/clients/fb3f5a508aeeb6d39e6d7e1e47bda9ac/app/autoload.php(9): Doctrine\Common\Annotations\AnnotationRegistry::1Loader /(Array) home/clients/fb3f5a508aeeb6d39e6d7e1e47bda9ac/web/app.php(6): require('/home/clients/f...') #2 {main} 被扔到 /home/clients/fb3f5a508aeeb6d39e6d7e1e47bandinelib/docs/ /Doctrine/Common/Annotations/AnnotationRegistry.php 第 117 行
我发现那些链接似乎非常有用: - Symfony 致命错误 - http://www.doctrine-project.org/2017/07/25/php-7.1-requirement-and-composer.html
但是,我无法解决问题。我找不到我需要与 PHP 7.0 兼容的版本...
在我的 Composer json 配置文件中,我有:
"platform": {
"php": "7.0"
},
"require": {
"php": ">=5.5.9",
"doctrine/doctrine-bundle": "^1.6",
"doctrine/doctrine-cache-bundle": "^1.2",
"doctrine/orm": "^2.5",
"incenteev/composer-parameter-handler": "^2.0",
"misd/phone-number-bundle": "^1.2",
"sensio/distribution-bundle": "^5.0",
"sensio/framework-extra-bundle": "^3.0.2",
"symfony/monolog-bundle": "^3.0.2",
"symfony/polyfill-apcu": "^1.0",
"symfony/swiftmailer-bundle": "^2.3.10",
"symfony/symfony": "3.3.*",
"twig/twig": …Run Code Online (Sandbox Code Playgroud)