前几天客户提出一个需求,就是在前台页面搜索文章时,若搜索词在文章附件的pdf文件中有出现的话就要将该文章作为搜索结果。我的思路是后台发布文章时循环检测每一个附件的格式,若附件格式为pdf的话就将里面的文字读取出来 追加到一个$string变量里,然后将$string的作为一个file_text字段的信息保存到数据库后面做搜索的时候使用。
我参考的一个回答地址是:https://baijiahao.baidu.com/s?id=1572245039857772&wfr=spider&for=pc
$parser = new \Smalot\PdfParser\Parser();
// 调用解析方法,参数为pdf文件路径,返回结果为Document类对象
$document = $parser->parseFile($path);
// 获取所有的页
$pages = $document->getPages();
// // 逐页提取文本
$text = '';
foreach($pages as $page){
$text.= $page->getText();
}
echo $text;
结果如下图,已经把pdf文件里面的文字读取出来了(扫描件合成的pdf因为好像都是图片所以是读不出来内容的,编辑一个doc文件然后输出为p

本文介绍了如何使用PHP的PdfParser库配合TCPDF类库解析PDF文件内容,以满足从PDF附件中搜索文章的需求。通过示例代码展示了如何提取PDF中的文字,并对集成这两个库到ThinkPHP框架中进行了详细说明,包括文件结构调整和命名空间修改。遇到问题时,建议耐心调试解决。
最低0.47元/天 解锁文章
3674





