preg_match_all 当 pattern 是 YII 中的变量时出错
preg_match_all error when pattern is a variable in YII
我有一个名为字典的 table,其中包含要在从另一个 table 中提取的文本中查找的单词。我正在使用 preg_match_all 来匹配文本中的单词。我尝试了很多在网上找到的不同解决方案,但到目前为止还没有成功。看来问题是当我创建一个变量 $pattern 来保存文本时,请参见下面的代码。任何帮助都感激不尽。
<?php $words= Dictionary::model()->findAllBySql("select word from tbl_dictionary ");?> <?php foreach ($words as $word): ?>
<?php //$matches = array()?>
<?php $string =$data->text_content; $pattern = "/\b($string)\b/" ; preg_match('.$pattern.', $word->word, $match);?>
<?php echo var_dump($match); ?>
<?php endforeach ;?>
我做错了。变量 $pattern 应该有我要找的词以及 $word->word 应该在哪里
$数据->text_content。仅纯化 $data->text_content
<?php $words= Dictionary::model()->findAllBySql("select word from tbl_dictionary ");?>
<?php foreach ($words as $word): ?>
<?php //$matches = array()
$CHtmlPurifier = new CHtmlPurifier();
$CHtmlPurifier->options = array('HTML.ForbiddenElements' => array('br, p, img,<'));
$purified = $CHtmlPurifier->purify($data->text_content);
preg_match( "/$word->word/", $purified, $match);
?>
<?php echo var_dump($match); ?>
我有一个名为字典的 table,其中包含要在从另一个 table 中提取的文本中查找的单词。我正在使用 preg_match_all 来匹配文本中的单词。我尝试了很多在网上找到的不同解决方案,但到目前为止还没有成功。看来问题是当我创建一个变量 $pattern 来保存文本时,请参见下面的代码。任何帮助都感激不尽。
<?php $words= Dictionary::model()->findAllBySql("select word from tbl_dictionary ");?> <?php foreach ($words as $word): ?>
<?php //$matches = array()?>
<?php $string =$data->text_content; $pattern = "/\b($string)\b/" ; preg_match('.$pattern.', $word->word, $match);?>
<?php echo var_dump($match); ?>
<?php endforeach ;?>
我做错了。变量 $pattern 应该有我要找的词以及 $word->word 应该在哪里 $数据->text_content。仅纯化 $data->text_content
<?php $words= Dictionary::model()->findAllBySql("select word from tbl_dictionary ");?>
<?php foreach ($words as $word): ?>
<?php //$matches = array()
$CHtmlPurifier = new CHtmlPurifier();
$CHtmlPurifier->options = array('HTML.ForbiddenElements' => array('br, p, img,<'));
$purified = $CHtmlPurifier->purify($data->text_content);
preg_match( "/$word->word/", $purified, $match);
?>
<?php echo var_dump($match); ?>