timthumb 是个缩略图的利器,一个客户的网站是环境是 iis + php5.4
, 缩略图一直不能正常的显示,而存在汉字的图片可以直接打开。通过 TimThumb.php?src=/dir/汉字.jpg&w=100&h=50 这样的格式无法使用。
原始是在 window下,php函数执行 file_exists("汉字.jpg") ,如果有汉字会导致失败,可能是原因是编码,毕竟windows使用的不是utf8。所有处理的方式是把文件的编码,修改为GB2312。
程序中需要修改两个地方
第一: 修改一个判读
protected function getLocalImagePath($src){
...
if(file_exists ($this->docRoot . '/' . $src)) {
# 更换为
if(file_exists(iconv('UTF-8','GB2312',$this->docRoot . '/' . $src))) {
第二: 添加一行代码
protected function serveInternalImage(){
# 添加一下代码
$this->localImage = iconv('UTF-8','GB2312',$this->localImage);