PHP 7中的moxiemanager错误

时间:2018-06-29 20:31:44

标签: tinymce php-7 moxiemanager

将版本从PHP5更新到PHP7后,尝试从我已集成到项目中的tinymce的moxiemanager插件插入图像时出现错误。

告诉我: 错误: 数组到字符串的转换

1 个答案:

答案 0 :(得分:6)

几个小时后,我可以找到错误

特定于:/home/user/website/admin/js/vendor/tinymce/plugins/moxiemanager/classes/Util/EventDispatcher.php:118

在方法中:

public function dispatch($sender, $name, $args) {
    $name = strtolower($name);

    if (isset($this->observers[$name])) {
        $observers = $this->observers[$name];
        $args->setSender($sender);

        for ($i = 0, $l = count($observers); $i < $l; $i++) {
            $value = $observers[$i][1]->$observers[$i][0]($args);

            // Is stopped then break the loop
            if ($value === false || $args->isStopped()) {
                return $args;
            }
        }
    }

    return $args;
}

您必须替换以下行:

$value = $observers[$i][1]->$observers[$i][0]($args);

为此:

$value = $observers[$i][1]->{$observers[$i][0]}($args);

PHP7在分析源文件时使用抽象的语法树。现在将从左到右严格评估对变量,属性和方法的间接访问。

希望您可以使用此信息。