PHP中是否有这样的函数在unix/linux系统中执行grep -f filename。
如果不存在,那么哪些PHP函数/工具将有助于为此创建定制的方法/函数。谢谢!

最佳答案

实际上,恕我直言,我要说的是以下内容:

$result = preg_grep($pattern, file($path));

参见 preg_grep file

如果您需要对一组文件进行递归操作,则还有 glob foreach或(Recursive)DirectoryIterator GlobIterator ,并且不要忘记 RegexIterator

SplFileObject RegexIterator 的示例:
$stream = new SplFileObject($file);
$grepped = new RegexIterator($stream, $pattern);

foreach ($grepped as $line) {
    echo $line;
}

输出($file的所有包含$ pattern的行):
$grepped = new RegexIterator($stream, $pattern);
foreach ($grepped as $line) {
    echo $line;
}

演示:https://eval.in/208699

10-06 07:37