为什么文本字段结果在zend lucene中作为html文件返回?

时间:2014-12-31 15:24:06

标签: php html zend-framework lucene

我正在使用zend lucene搜索引擎,我有一个名为title的文本字段,其值在搜索结果页面中打印为完整的结构化html文档,这里是我的代码:

在创作中添加字段:

$doc->addField(Zend_Search_Lucene_Field::Text('title',CHtml::encode($post->title), 'utf-8'));

在搜索结果页面中打印该字段:

<?php  echo $query->highlightMatches(CHtml::encode($result->title)); ?>

如何显示:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html><head><meta http-equiv="Content-type" content="text/html; charset=UTF-8"></head><body>بالصور: كهوف مضيئة <script type="text/javascript" src="/~arraqeeb/js/news.ticker.js"></script>
<script type="text/javascript" src="/~arraqeeb/js/imgs.js"></script>
<script type="text/javascript" src="/~arraqeeb/ckeditor/ckeditor.js"></script>
</body></html>

我的问题是我不会出现这些html标签,因为它们打印在我的html页面的正文中,因此我希望结果只是标题文本如下:

بالصور: كهوف مضيئة 
抱歉我对这个问题的解释不好,我是lucene的新手,希望你有解决这个问题的方法

1 个答案:

答案 0 :(得分:1)

输出数据时,问题的解决方案之一可能是strip_tags

<?php echo strip_tags($query->highlightMatches(CHtml::encode($result->title))); ?>