Heim > php教程 > PHP开发 > Yii purifier CHtmlPurifier-Nutzungsbeispiel (Filterung fehlerhaften Codes)

Yii purifier CHtmlPurifier-Nutzungsbeispiel (Filterung fehlerhaften Codes)

高洛峰
Freigeben: 2016-12-30 14:49:29
Original
1143 Leute haben es durchsucht

Das Beispiel in diesem Artikel beschreibt die Verwendung des Yii-Reinigers CHtmlPurifier. Teilen Sie es allen als Referenz mit. Die Details lauten wie folgt:

1 Verwendung im Controller:

public function actionCreate()
{
  $model=new News;
  $purifier = new CHtmlPurifier();
  $purifier->options = array(
    'URI.AllowedSchemes'=>array(
              'http' => true,
              'https' => true,
    ),
       'HTML.Allowed'=>'div',
  );
  if(isset($_POST['News']))
  {
    $model->attributes=$_POST['News'];
    $model->attributes['content'] = $purifier->purify($model->attributes['content']);
    if($model->save())
      $this->redirect(array('view','id'=>$model->id));
  }
}
Nach dem Login kopieren

2. Im Modell Verwendung in Filtern:

protected function beforeSave()
{
  $purifier = new CHtmlPurifier();
  $purifier->options = array(
    'URI.AllowedSchemes'=>array(
              'http' => true,
              'https' => true,
    ),
       'HTML.Allowed'=>'div',
  );
  if(parent::beforeSave()){
    if($this->isNewRecord){
      $this->create_data = date('y-m-d H:m:s');
      $this->content = $purifier->purify($this->content);
    }
    return true;
  }else{
    return false;
  }
}
Nach dem Login kopieren

3. Verwendung in Filtern:

public function filters()
{
  return array(
    'accessControl', // perform access control for CRUD operations
    'postOnly + delete', // we only allow deletion via POST request
    'purifier + create', //载入插入页面时进行些过滤操作
  );
}
public function filterPurifier($filterChain){
  $purifier = new CHtmlPurifier();
  $purifier->options = array(
    'URI.AllowedSchemes'=>array(
              'http' => true,
              'https' => true,
    ),
       'HTML.Allowed'=>'div',
  );
  if(isset($_POST['news']){
    $_POST['news']['content'] = $purify($_POST['news']['content']);
  }
    $filterChain->run();
}
Nach dem Login kopieren

4. Verwendung in Ansichten:

<?php $this->beginWidget(&#39;CHtmlPurifier&#39;); ?>
...display user-entered content here...
<?php $this->endWidget(); ?>
Nach dem Login kopieren

Ich hoffe, dass dieser Artikel für alle auf dem Yii-Framework basierenden PHP-Programmdesigns hilfreich sein wird.

Weitere Artikel zu Yii purifier CHtmlPurifier mit Anwendungsbeispielen (Filtern von fehlerhaftem Code) finden Sie auf der chinesischen PHP-Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage