1

我尝试在 7.0 php 版本的 apache 服务器上运行 Yii2 应用程序。Yii2框架包版本:

yiisoft/yii2                        3.0.x-dev 9f215f3

所以,当我在浏览器中运行我的 site.loc 索引页面时,我得到一个错误

Parse error: syntax error, unexpected '=' in /var/www/html/remi-web.co/vendor/yiisoft/yii2/di/Container.php on line 365

导致错误的代码段:

 /* @var $reflection ReflectionClass */
    [$reflection, $dependencies] = $this->getDependencies($class);

equing 语句左侧的数组[]。我以前从未遇到过这种说法,所以我什至不知道在哪里寻找解释。

我刚刚在 Apache 上安装了 php7.0,所以它可能需要安装一些模块或在设置中启用一些属性才能正确运行它。

有部分phpinfo详细信息:

PHP Version 7.0.33-23+ubuntu18.04.1+deb.sury.org+1
Loaded Modules  core mod_so mod_watchdog http_core mod_log_config mod_logio mod_version mod_unixd mod_access_compat mod_alias mod_auth_basic mod_authn_core mod_authn_file mod_authz_core mod_authz_host mod_authz_user mod_autoindex mod_deflate mod_dir mod_env mod_filter mod_mime prefork mod_negotiation mod_php7 mod_reqtimeout mod_rewrite mod_setenvif mod_status 

它适用于 PHP 版本 7.0.32 的生产服务器,但不适用于我的本地计算机。

4

1 回答 1

3

从 PHP 7.1 开始,我们对数组进行了解构分配。

[$x,$y] = [1,2];
echo $x;  // gives 1

这是 的简写list()

list($x,$y) = [1,2];
echo $x; // gives 1

您可以在此处阅读有关 PHP 7.1 功能的信息。

于 2020-03-20T14:21:50.753 回答