Xml данные в вопросе не является действительным.
- Он не имеет корневой элемент
- CustomerId = "1234567" LoginID = "1234567" ломает XML разборе
Вы должны обернуть его в корневой элемент, решить проблему атрибутов, чем вы можете использовать простой XML-парсер для генерации объекта, который может быть преобразован в массив.
Пример
$o = new stdClass();
$o->customerdata = '<TPSession userid="22" CustomerId="123456"LoginId="123456" /><TPSession userid="26" CustomerId="1234567"LoginId="1234567" />';
function wrap($xml) {
return sprintf ('<x>%s</x>', $xml);
}
function fix($xml) {
return str_ireplace ('"LoginId', "\" LoginId", $xml);
}
$xml = wrap (fix ($o->customerdata));
$sx = new SimpleXMLElement ($xml);
$sx = (array) $sx;
$sx = $sx ['TPSession'];
foreach ($sx as $row) {
var_dump ((array) $row);
}
Каким должен быть массив? –