在 tinker 中访问 EasyWeChat,出现警告信息,不知如何解决

EasyWeChat的版本试了好几个,还是同样的问题,看了一下报错源码,也不知道如何是好,请指点我一下。

>>> $miniProgram = \EasyWeChat::miniProgram();
PHP Warning:  Illegal offset type in isset or empty in /home/vagrant/code/larabbs/vendor/symfony/event-dispatcher/EventDispatcher.php on line 56
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
最佳答案

指定下 symfony/event-dispatcher 版本即可: composer require symfony/event-dispatcher:^4.3

5年前 评论
jackzheng9969 (楼主) 5年前
讨论数量: 4

56行的代码是:

$eventName = $eventName ?? \get_class($event);

其中??是PHP 7的新特性:

由于日常使用中存在大量同时使用三元表达式和 isset()的情况, 我们添加了null合并运算符 (??) 这个语法糖。如果变量存在且值不为NULL, 它就会返回自身的值,否则返回它的第二个操作数。

5年前 评论
           if (empty($this->listeners[$eventName])) {
                return array();
            }
5年前 评论

@jackzheng9969
PHP文档中有这么一句话:

在 PHP 5.5 之前,empty() 仅支持变量;任何其他东西将会导致一个解析错误。换言之,下列代码不会生效: empty(trim($name))。 作为替代,应该使用trim($name) == false.

你的PHP版本是多少?

5年前 评论
jackzheng9969 (楼主) 5年前

指定下 symfony/event-dispatcher 版本即可: composer require symfony/event-dispatcher:^4.3

5年前 评论
jackzheng9969 (楼主) 5年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!