【问题标题】:Find String withing particular file using grep command in php在 php 中使用 grep 命令在特定文件中查找字符串
【发布时间】:2013-10-20 14:23:48
【问题描述】:

我正在上传一个 PDF 文件,我想搜索上传中包含的特定单词

在 php.ini 文件中仅使用 grep 命令。

提前致谢。

【问题讨论】:

  • PDF 是二进制格式,grep 不起作用。您必须先将 PDF 转换为文本。
  • @Amal,谢谢.. 但是如何将其转换为 txt 文件,然后使用 grep 命令查找单词。
  • 你试过searching吗?这个问题之前已经回答过很多次了。尝试其中一种解决方案,如果无法正常工作,请更新此问题(或发布新问题)来描述错误/问题。

标签: php linux


【解决方案1】:

你可以使用pdfgrep看这个链接How to search contents of multiple pdf files?我也用过几次,它也支持递归搜索。

感谢和问候,
阿洛克·撒克

【讨论】:

    【解决方案2】:

    正如 Amal Murali 在评论中所写,您必须将 PDF 内容转换为文本。这已经在 StackOverflow 上解决了,即How to extract text from the PDF document?。 然后你可以使用 preg_match_all,或者如果你真的想使用 grep,你可以使用 proc_open 并通过管道传递文本。

    因此,使用来自http://pastebin.com/hRviHKp1 的类(来自文章的链接),这里是 preg_match_all 的示例:

    include('class.pdf2text.php');
    $a = new PDF2Text();
    $a->setFilename('Videographer_RFP.pdf');
    $a->decodePDF();
    preg_match_all ('some pattern', $a->output(), $matches);
    print_r($matches);
    

    请注意,我没有测试过代码。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-07-23
      • 2020-01-24
      相关资源
      最近更新 更多