如何从特定行读取特定行?
### users
user name : albert
user name : asqkut
user name : ahddrt
user name : khert
### info
line 1
line 2
line 3
....
### banned
192.168.1.1
192.168.1.2
192.168.1.3
192.168.1.4
我想知道如何阅读### info并停止###禁止获取日期之间
感谢您的帮助
答案 0 :(得分:1)
如果您的文字文件中没有多个\n\n
,请执行以下操作:
### users
user name : albert
user name : asqkut
user name : ahddrt
user name : khert
### info
line 1
line 2
line 3
....
### banned
192.168.1.1
192.168.1.2
192.168.1.3
192.168.1.4
你可以在这样的数组中获取数据
$lines = file_get_contents("file.txt");
$start = strpos($lines, "### info");
$end = strpos($lines, "### banned");
$result = explode("\r\n",substr($lines, $start+10,$end-$start-11));
var_dump($result);
您获得的结果是
array (size=4)
0 => string 'line 1' (length=6)
1 => string 'line 2' (length=6)
2 => string 'line 3' (length=6)
3 => string '....
' (length=5)
答案 1 :(得分:1)
我建议调查SplFileObj,它允许你直接寻找线,假设你知道你想要的线,否则你可以轻松地迭代它们。