今天找时间分析了一下,找到了页面空白的原因,可能是因为php版本兼容性的问题所致,所以只是部分用户遇到这种情况,这里分享一下。
经过分析发现是sourcefunctionfunction_core.php文件中一处代码的原因:
代码如下:
static $replacements = array( :, @, &, =, +, $, ,, /, ?, %, #, [, ]);
将双引号全换成单引号即可。
x3.1中sourcefunctionfunction_core.php文件增加了一个函数:
代码如下:
function fixurl($url) {
static $fix = array( '%3a', '%40', '%26', '%3d', '%2b', '%24', '%2c', '%2f', '%3f', '%25', '%23', '%5b', '%5d');
static $replacements = array( :, @, &, =, +, $, ,, /, ?, %, #, [, ]);
return str_replace($fix, $replacements, urlencode($url));
}
出现就在上面红色部分代码,将其中的双引号换成单引号即解决问题:
代码如下:
static $replacements = array( ':', <a href=mailto:'@'>'@'</a>
, '@', '&', '=', '+', '$', ',', '/', '?', '%', '#', '[', ']');
更多信息请查看IT技术专栏