求指教Db.class.php的问题

浏览:503 发布日期:2014/03/11 分类:求助交流
我现在是做一个查询 $map= array(
    'title'=>array('like','%新华社%')
);
$New=M('New');
$New->where($map)->count('id');
echo $New->_sql();
输出 'SELECT COUNT(id) AS tp_count FROM `z_new` WHERE ( `title` LIKE '%新华�\�%' ) LIMIT 1 '
最后一个字乱码.
于是我一直跟踪到了 db.class.php 的 parseValue方法,这个方法是protected function parseValue($value) {
        if(is_string($value)) {
       echo $value,'<br/>';  //这里是 %新华社%
            $value =  '\''.$this->escapeString($value).'\'';
      echo $value,'<br/>';  //这里是 %新华�\�%
        }elseif(isset($value[0]) && is_string($value[0]) && strtolower($value[0]) == 'exp'){
            $value =  $this->escapeString($value[1]);
        }elseif(is_array($value)) {
            $value =  array_map(array($this, 'parseValue'),$value);
        }elseif(is_bool($value)){
            $value =  $value ? '1' : '0';
        }elseif(is_null($value)){
            $value =  'null';
        }
        return $value;
    }
问题就在这里 按理说
我在该类的 escapeString方法里面输出也应该有值,
但是实际上没有.求大神知道,这玩意在什么地方处理的
最佳答案
评论() 相关
后面还有条评论,点击查看>>