未分类

UCenter 客戶端不兼容php7导致UCenter通信失败

wordpress的ucenter插件或者discuz如果使用php7 可能会导致通讯失败,原因是ucenter的客户端比较久远,没有兼容php7,其中的

echo $uc_note->$get['action']($get, $post);

而php5到php7有一个breaking change和类方法动态调用有关

http://php.net/manual/zh/migration70.incompatible.php

php5和php7对这段代码的解释顺序是不同的,所以导致了dz在php7下这里运行出错,修改也很简单,参照样例,这里修改为

echo $uc_note->{$get[‘action’]}($get, $post);
就可以让php7用无歧义的方式解析成php5的结果,于是就能通信成功了

发表评论

电子邮件地址不会被公开。 必填项已用*标注