我需要使用PHP获取文本文件的行号.我需要的是"想要这条线".
我尝试使用file()将文件行放在一个数组中并使用array_search()进行搜索,但它不会返回行号.在这个例子中,我需要返回3作为行号.
$file = file("file.txt");
$key = array_search("WANT", $file);
echo $key;
Run Code Online (Sandbox Code Playgroud)
文本文件:
First Line of Code
Some Other Line
WANT THIS LINE
Last Line
Run Code Online (Sandbox Code Playgroud)
array_search()正在寻找完全匹配.您需要遍历数组条目以查找部分匹配
$key = 'WANT';
$found = false;
foreach ($file as $lineNumber => $line) {
if (strpos($line,$key) !== false) {
$found = true;
$lineNumber++;
break;
}
}
if ($found) {
echo "Found at line $lineNumber";
}
Run Code Online (Sandbox Code Playgroud)