Chtml :: purifier无法正常工作

时间:2014-08-07 06:58:09

标签: php yii htmlpurifier

我正在尝试使用Chtml :: prifier来链接内容,但链接尚未链接。是否还需要其他配置设置。

    public function actionTime() {
    $p = new CHtmlPurifier();
    $p->options = array('URI.AllowedSchemes'=>array(
        'http' => true,
        'https' => true,
    ));

    echo $p->purify("http://testsite.com");

    $this->beginWidget('CHtmlPurifier');
    echo "all http://anothersite.com";
    $this->endWidget();
    }

在这两种情况下,我都会将文本视为输出 yii版本1.1.14

2 个答案:

答案 0 :(得分:1)

尝试这样做:

echo "Try to input some html tags and see what tag does it filter : ";
echo CHtml::beginForm();
echo CHtml::textArea('user_input');
echo "<br/>";
echo CHtml::submitButton();
echo CHtml::endForm();

echo "<br/><br/>The result: <br/>";
echo $user_input;

echo "<br/><br/>The result in html: <br/>";
echo CHtml::encode($user_input);

XssController.php:

public function actionHtmlPurifier(){
               $user_input = null;
               if (isset($_POST['user_input'])){
                       $user_input = $_POST['user_input'];
               }

               $parser=new CHtmlPurifier(); //create instance of CHtmlPurifier
               $user_input=$parser->purify($user_input); //we purify the $user_input

               $this->render("htmlpurifier", array('user_input'=>$user_input));
       }

我建议你使用这个扩展程序,我之前测试过它。

http://www.yiiframework.com/extension/input

答案 1 :(得分:0)

对不起我误解了html净化器的功能。我想要的是能够将example.com转换为“a”标签并且思想净化器将会这样做的东西。我将使用正则表达式将其转换为“a”标签,然后使用净化器显示它。