バージョンをPHP5からPHP7に更新した後、プロジェクトに統合したtinymceのmoxiemanagerプラグインから画像を挿入しようとすると、エラーが表示されます。
教えてください:エラー:配列から文字列への変換
数時間後、エラーを見つけることができました
具体的には: /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は、ソースファイルを分析するときに抽象構文木を使用します。変数、プロパティ、およびメソッドへの間接アクセスは、左から右に厳密に評価されるようになりました。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加