Yii formatRaw有什么用?

时间:2013-11-20 20:57:59

标签: php function class yii format

我的问题是关于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;
}

为什么有人需要这个?它返回确切的给定值。

我只猜它可以用作占位符。能不能给我一个可以使用它的例子?

1 个答案:

答案 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是一个很大的包,它的性能不是很好。在保存到数据库之前,您应该考虑缓存纯化结果或净化用户输入。