A-A+

discuz在hhvm环境下显示不正常解决办法

本文于2014年11月16日最后更新 IDC专用, 网络心得

 

其实出现这个问题只是discuz使用了在php5.5.0已经弃用了PREG_REPLACE(http://php.net/manual/en/reference.pcre.pattern.modifiers.php#reference.pcre.pattern.modifiers.eval)。。。使用回调函数替换就好。

下面张自然不说废话了,直接说方法,打开discuz根目录/source/function下的cache_styles.php替换以下代码

 

120行原来是

$cssdata = preg_replace("/\{([A-Z0-9]+)\}/e", '\$data[strtolower(\'\1\')]', $cssdata);
替换为

$cssdata = preg_replace_callback( '/\{([A-Z0-9]+)\}/', function( $v ) use ( $data ) {
return $data[strtolower($v[1])];
}, $cssdata );

 

我不啰嗦了,抓紧时间当驴想办法解决其他问题。。。。

 

 

  1. 呼博士
    这个程序不是很熟悉

给张自然个人博客留言

Copyright © ZhangZiRan.com All Rights Reserved. 张自然个人博客 内容版权所有,同时保留所有权利。个人博客免责声明

用户登录