PHP致命错误:无法将词法变量$EventName用作中的参数名
我有以下代码(GuzzHttplib)标题中所说的错误,请告诉我如何手动修复它。老实说,我对函数()Use()构造一无所知,所以我不知道如何修复它。
public function once($eventName, callable $listener, $priority = 0) {
$onceListener = function (
EventInterface $event,
$eventName
) use (&$onceListener, $eventName, $listener, $priority) {
$this->removeListener($eventName, $onceListener);
$listener($event, $eventName, $this);
};
$this->on($eventName, $onceListener, $priority);
}
问题出在使用后的$EventName(构造。
解决方案
我遇到了同样的问题,这是由于较早版本的GUZLE与php 7不兼容造成的。通过将GUZLE更新到版本5.3.4,已修复此问题。
$ composer update guzzlehttp/guzzle
导致
Loading composer repositories with package information
Updating dependencies (including require-dev)
Package operations: 0 installs, 1 update, 0 removals
- Updating guzzlehttp/guzzle (5.3.0 => 5.3.4): Downloading (100%)
Writing lock file
Generating autoload files
相关文章