【问题标题】:Error in moxiemanager with PHP7使用 PHP7 在 moxiemanager 中出错
【发布时间】:2018-06-29 20:31:43
【问题描述】:

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

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

【问题讨论】:

    标签: tinymce php-7 moxiemanager


    【解决方案1】:

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

    具体在:/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 在分析源文件时使用抽象句法树。对变量、属性和方法的间接访问现在将严格从左到右进行评估。

    【讨论】:

    • 今天是这个答案第二次救了我的培根。这是仍然必须维护真正旧的 MoxieManager 的问题之一。谢谢@JesusGuevara!
    猜你喜欢
    • 2019-02-25
    • 2023-03-17
    • 2016-11-14
    • 2016-07-22
    • 2016-02-03
    • 2016-04-20
    • 2016-12-04
    • 2018-10-06
    • 2016-03-18
    相关资源
    最近更新 更多