【发布时间】:2011-06-13 22:59:46
【问题描述】:
我正在尝试制作一个小的 php 脚本来自动化一些工作流程。 脚本要做的是读取一个文件(每个文件大约 10-20kb)。 然后我需要在文件中搜索一些特定的短语并输出——如果出现这些短语——行号和短语。
例如,我有一个正在阅读和搜索的文本文件。我搜索短语“花是黄色的”、“马是白色的”和“混合的”;
那么我的输出是:
第 4 行:“马是白色的” 第 19 行:“混合;” 第 22 行:“混合;” 第 99 行:“花是黄色的” ……等等。
我正在使用这段代码,它正确地输出了每一行和行号,但我无法制作一个只输出搜索到的短语的搜索例程:
<?php
$lines = file('my-text-file.txt');
foreach ($lines as $line_num => $line) {
echo "Line #<b>{$line_num}</b> : " . htmlspecialchars($line) . "<br />\n";
}
?>
我的想法是使用 strpos ,然后每次我发现短语的出现时,它都会将它放入一个数组(或字典)中,其中行号作为键,短语作为值但没有'无法使其工作,我认为可能有更好,更有效的方法。
任何帮助或建议我将不胜感激。
谢谢
- 梅斯蒂卡
【问题讨论】:
标签: php arrays foreach readfile strpos