simiclips
28.08.2013 - 13:02
Есть
php скрипт, в нём выполняется команда arp -n | grep 10.0
Выводится:
10.0.129.28 ether 00:17:c4:7f:20:8c C vlan129
10.0.115.2 (incomplete) vlan115
10.0.109.218 ether 00:15:17:5f:ba:23 C vlan109
10.0.129.85 ether 20:54:76:8b:39:0f C vlan129
Нужно это всё записать в массив по отдельности-сначала ip, потом мак, потом вилан. Помогите пожалуйста
Игорь_Vasinsky
28.08.2013 - 14:02
результат скрипта в переменную и регуляркой по ней.
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
$data = ' 10.0.129.28 ether 00:17:c4:7f:20:8c C vlan129
10.0.115.2 (incomplete) vlan115
10.0.109.218 ether 00:15:17:5f:ba:23 C vlan109
10.0.129.85 ether 20:54:76:8b:39:0f C vlan129';
preg_match_all ('/(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}).*(\w{2}:\w{2}:\w{2}:\w{2}:\w{2}:\w{2} | \(.*\)).*(vlan\d{3})/iUs', $data, $match);
foreach ( $match[1] as $i=>$ip ) {
$rez[] = array ('ip' => $ip,
'mac' => $match[2][$i],
'vlan' => $match[3][$i]
);
}
Игорь_Vasinsky
28.08.2013 - 21:15
мне кажется тут надо использовать explode - ибо огромный паттерн пугает всех - особбено сервер, даже и рабочий
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
borisz
28.08.2013 - 22:36
Цитата (alted @ 28.08.2013 - 18:57) |
$data = ' 10.0.129.28 ether 00:17:c4:7f:20:8c C vlan129 10.0.115.2 (incomplete) vlan115 10.0.109.218 ether 00:15:17:5f:ba:23 C vlan109 10.0.129.85 ether 20:54:76:8b:39:0f C vlan129'; preg_match_all ('/(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}).*(\w{2}:\w{2}:\w{2}:\w{2}:\w{2}:\w{2} | \(.*\)).*(vlan\d{3})/iUs', $data, $match); foreach ( $match[1] as $i=>$ip ) { $rez[] = array ('ip' => $ip, 'mac' => $match[2][$i], 'vlan' => $match[3][$i] ); } |
Спасибо
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.