我的问题是关于CFormatter功能:
/**
* Formats the value as is without any formatting.
* This method simply returns back the parameter without any format.
* @param mixed $value the value to be formatted
* @return string the formatted result
*/
public function formatRaw($value)
{
return $value;
}
为什么有人需要这个?它返回确切的给定值。
我只猜它可以用作占位符。能不能给我一个可以使用它的例子?
答案 0 :(得分:3)
它用于默认格式为'text'的地方,例如CGridView或CDetailView。如果type
未在以下CGridView代码中设置为raw,则value
将被转义并打印为<a>Link</a><img scr='test'/>
而不是html。
'columns'=>array(
array(
'header'=>'This link and picture only show when the format is html or raw',
'type'=>'raw',
'value'=>"<a>Link</a><img scr='test'/>",
)
修改强>
CHtmlPurifier API page说明raw
优先于html
注意:由于HTML Purifier是一个很大的包,它的性能不是很好。在保存到数据库之前,您应该考虑缓存纯化结果或净化用户输入。