PHP搜索30000个文本文件

PHP搜索30000个文本文件,php,file,search,text,Php,File,Search,Text,我有一个大约30000个文本文件的目录,我想在每个目录中搜索它们是否包含指定的文本。如何在PHP中有效地执行此操作?grep是您的朋友。如果出于某种原因需要php脚本中的结果,您可以使用允许执行外部命令的php函数调用它。grep是您的朋友。如果出于某种原因需要php脚本中的结果,可以使用允许执行外部命令的php函数调用它。1)如上所述使用grep 2) 缓存搜索结果,这样您就不必再为同一搜索词搜索30000个文本文件。1)如上所述使用grep < P > 2)缓存搜索结果,这样你就不必再搜索3

我有一个大约30000个文本文件的目录,我想在每个目录中搜索它们是否包含指定的文本。如何在PHP中有效地执行此操作?

grep
是您的朋友。如果出于某种原因需要php脚本中的结果,您可以使用允许执行外部命令的php函数调用它。

grep
是您的朋友。如果出于某种原因需要php脚本中的结果,可以使用允许执行外部命令的php函数调用它。

1)如上所述使用grep

2) 缓存搜索结果,这样您就不必再为同一搜索词搜索30000个文本文件。

1)如上所述使用grep



< P > 2)缓存搜索结果,这样你就不必再搜索30000个相同的搜索项的文本文件了。

正如其他人所说的,GRIP是你的朋友,对它进行系统调用。

正如其他人所说的,GRIP是你的朋友,做系统调用。

< P>也可以考虑使用Lucene之类的东西建立搜索索引:

< P>考虑使用像Lucene这样的搜索索引:

是否所有文件都将保持相同的名称?是否要添加任何文件,或者是否设置为30,00?如果所有的文件名都保持不变,并且没有添加任何文件,我会创建一个索引(可能是index.txt),并将其分解以获得关键字的文件名。

所有的文件都将保持相同的名称吗?是否要添加任何文件,或者是否设置为30,00?如果所有文件名都保持不变,并且不添加任何文件,我将创建一个索引(可能是index.txt),并分解该索引以获取关键字的文件名。

对grep执行系统调用。说真的。你为什么要用PHP来解决这个问题?这听起来像是最近发布的一个问题。。。。。答案仍然是“不要使用PHP”——或者使用PHP调用非PHP的东西。要获得最高效的解决方案,您需要将作业交给专门为此设计的工具。比grep快得多的东西。请参阅:当您搜索“php搜索内部文件”@stack的搜索框时,首先会弹出此问题。我只能说:哇。在过去的好日子里,离题答案实际上是被容忍的,甚至被接受的:)对grep进行系统调用。说真的。你为什么要用PHP来解决这个问题?这听起来像是最近发布的一个问题。。。。。答案仍然是“不要使用PHP”——或者使用PHP调用非PHP的东西。要获得最高效的解决方案,您需要将作业交给专门为此设计的工具。比grep快得多的东西。请参阅:当您搜索“php搜索内部文件”@stack的搜索框时,首先会弹出此问题。我只能说:哇。在过去的好日子里,人们实际上容忍甚至接受离题答案:)如果他真的有3万个文件,他就需要
grep-r[exp]folder-with-30k-files/
,否则他会破坏系统的ARG_MAX限制,grep只会说“太多的参数”@Tim:可以始终使用
xargs
向其提供文件名。如果他真的有30k个文件,他将需要
grep-r[exp]folder-with-30k-files/
,否则他将破坏系统的argu MAX限制,grep只会说“参数太多”。@Tim:可以始终使用
xargs
向其提供文件名。