PHP - 从文本文件中解析大括号之间的部分

时间:2014-11-13 00:51:20

标签: php parsing dhcp braces pfsense

我从我的pfSense获取DHCP租约文件作为文本文件,我需要使用PHP解析一些数据。

举个例子,这是文件的样子:

lease 192.168.15.13 {
starts 3 2014/11/12 23:51:05;
ends 4 2014/11/13 00:06:06;
cltt 3 2014/11/12 23:51:05;
binding state active;
next binding state free;
rewind binding state free;
hardware ethernet 8d:3a:96:91:a0:51;
uid "\001\200\352\226\001\240\341";
client-hostname "iPhone";
}
server-duid "\000\001\000\001\000\000\000H\000\015\271)p\335";

lease 192.168.15.12 {
starts 3 2014/11/12 23:51:53;
ends 4 2014/11/13 00:06:54;
cltt 3 2014/11/12 23:51:53;
binding state active;
next binding state free;
rewind binding state free;
hardware ethernet 8c:e6:5f:26:6d:fe;
uid "\001\200\346P&]\376";
client-hostname "Mike";
}
lease 192.168.15.15 {
starts 3 2014/11/12 23:40:34;
ends 3 2014/11/12 23:55:35;
tstp 3 2014/11/12 23:55:35;
cltt 3 2014/11/12 23:40:34;
binding state free;
hardware ethernet 84:58:8b:d7:44:10;
uid "\001\204x\213\207D\020";
}

有人知道如何从

开始提取大括号之间的部分
  

租赁192.168.25.xx {

直到

  

}

...

谢谢!

1 个答案:

答案 0 :(得分:0)

使用正则表达式:http://php.net/manual/en/function.preg-match.php

$matches = array();
preg_match("\{(.*)\}", $string, $matches);
echo $matches[1];