作者:blue暗紫天堂 | 来源:互联网 | 2013-06-19 09:14
CClipWidget提供了类似录制“宏”的功能,定义在CClipWidget的init和run之间的内容可以存放在Controller的Clip变量中 ,然后重新回放到任意其它位置。
CClipWidget封装的是CBaseController的beginClip和 endClip,CBaseController的 beginClip和 endClip的基本用法如下:
首先定义Clip
$this->beginClip('clipID');
// ... display the clip contents
$this->endClip();然后再需要使用这个Clip的地方
echo $this->clips['clipID'];
如 果$this 指向的不是Controller,而是某个Widget,可以使用
echo $this->getController()->clips ['clipID'];
使用ClipWidget 的方法如下,
beginWidget('CClipWidget',
array('id'=>'record')); ?>
endWidget(); ?>
clips['record']; ?>
-----------
clips['record']; ?>
首先也是定义Clip,这是通过beginWidget 和 endWidget 来定义,clip 的ID由参 数id 传入。然后就可以调用echo $this->clips['record']; 在需要的地方显示这段录制的内容。beginWidget 和 endWidget之间的内容可以根据需要自定义,本例显示三行文字。
显示结果如下: