假设我有以下几行:
How, are you!
Are you there?
Yes, you over there.
我必须显示包含word"那里"的那些行,在我的情况下它应该返回以下字符串数组:
["Are you there?", "Yes, you over there."]
我做的是:
$arr = array();
while (!feof($file)) {
$line = fgets($file);
if (strpos($line, $keyword) !== false) {
$arr[]=$line;
}
}
print_r($arr);
return;
如何以["Are you there?", "Yes, you over there."]
格式获得结果。
答案 0 :(得分:0)
这是一个快速的方法:
$result = preg_grep("/$keyword/", file("/path/to/file.txt"));
file()
创建每行的数组如果你想要那个文字字符串,那就是JSON:
$string = json_encode($result);
答案 1 :(得分:0)
正则表达式?
preg_match_all("/.* there .*|there .*|.* there.*/", $input_str, $output_array);
您可以将“there”替换为变量。