CHtml::Tag() $content参数问题

CHtml::tag(‘div’,array(‘class’=>‘sncs’),’’,‘false’);

CHtml::tag(‘a’,array(‘class’=>‘snc’,‘href’=>‘www.163.com’),‘链接’,‘true’);

显示的结果是:(1)

<div class="sncs"></div>

<a class="snc" href="163.com">链接</a>

原本是想做到:(2)

<div class="sncs">

<a class="snc" href="163.com">链接</a>

</div>

文档显示:mixed $content=false,

the content to be enclosed between open and close element tags. It will not be HTML-encoded. If false, it means there is no body content.

问题是:

1、mixed参数代表什么(其他地方也有这个参数)?

2、如何用CHtml::tag做到(2)?

3、(2)中在继续嵌入其他元素的方式?

不知道如何实现:内嵌对象?

用下面的方式可以做到:

echo CHtml::tag(‘div’,array(‘class’=>‘sncs’),"<a class=‘snc’ href=‘163.com’>链接</a>",‘false’);

效果:

<div class="sncs">

<a class="snc" href="163.com">链接</a>

</div>

感觉摸到软肋了???

如果只是静态内容,就直接写HTML代码,而不要调用CHtml函数,否则你的代码更费解。

如果你确实需要调用,可以这样写:




echo CHtml::tag('div', array('class'=>'sncs'),

    CHtml::link('链接', 'http://163.com', array('class'=>'snc'))

);



谢谢qiang,刚接触Yii,实际代码中没有这样写。

这是个优秀的framework。

1、降低了学习(成本)周期,确实可以快速开发;

2、早就该把那该死的templates丢掉;

3、可以和java企业级开发做比较。