一个奇怪现象:模板文件接收controller数据与不接收时有差异

#1 gnuser

文件结构:
(1)controller/bbs.php代码如下
 
class bbs extends spController{
    public function index(){
        $user=spClass("user");
        $this->user_sum=$user->findCount();
        $bokes=spClass("bokes");
        $this->bokes_sum=$bokes->findCount();
        $tpl=$this->spArgs("tpl","default/bbs");
        $this->display("{$tpl}/index.html");
    }
}

(2)tpl/default/bbs/index.html代码:
<{include file="/default/header.html"}>

(引用了同目录下的header.html文件)

输出结果如下图:

图1

顶上多了一行
当把

$user=spClass("user");
$this->user_sum=$user->findCount();
$bokes=spClass("bokes");
$this->bokes_sum=$bokes->findCount();

去掉后,输出结果如下图:
1.jpg
图2

即使把header.html的代码放到index.html中,结果也如图1.

请问有没有人遇到过这样的情况,如果遇到过,有什么办法可以解决?谢谢

2011-05-28 08:14:52

#2 gnuser

2.jpg
刚才没有上传好图1,现在补充图1

2011-05-28 08:19:00

#3 gnuser

3.jpg

选择后效果如上,很明显在项部多了一行

2011-05-28 08:20:52

#4 jake

这种情况一般都是BOM引起的,清一下文件BOM,包括控制器,入口文件,model和模板
http://speedphp.com/framework-utf8.html

凡是有载入的(像那个books.php文件),都清理一次。很多时候是dreamweaver会带bom,所以换个编辑器或者设置一下。

2011-05-28 08:22:00

#5 gnuser

谢谢老大,用ripbom程序清除了整个根目录下所有文件,果然发现是BOM作的恶。清楚后正常。

2011-05-28 08:49:44

#6 gnuser

使用DW虽然写代码比较方便,但也带来了BOM。好在有RIPBOM文件帮忙处理。

2011-05-28 08:52:19