$arr = explode("\n", preg_replace('/ +/',' ',$x));
array_shift($arr);
$result = Array();
foreach($arr as $v)
{
$tmp = explode(' ',$v);
list($ip,$port) = explode(':',$tmp[0]);
$item = Array('ip'=>$ip, 'port'=>$port);
array_shift($tmp);
array_shift($tmp);
foreach($tmp as $n)
{
list($key,$data) = explode(':',$n);
$item[$key] = $data;
}
$result[] = $item;
}
source
share