2015-06-22 2 views
0

Как просто, как свет солнца:SimpleXMLElement возвращает пустой объект

$xml = new SimpleXMLElement('<string>-2|-2|635705730515209906|7F2ShUrAQFJmvxTxVgkm2yjghWorOaZe/g==</string>'); 
      var_dump($xml->{"string"});die(); 

Он печатает:

object(SimpleXMLElement)#67 (0) { } 

Я бы ожидать, содержание "струна" узел ... Если я

var_dump($xml); 

я получаю:

object(SimpleXMLElement)#66 (1) { [0]=> string(61) "-2|-2|635705730515209906|7F2ShUrAQFJmvxTxVgkm2yjghWorOaZe/g==" } 

Но как получить узел «строка»?

+0

удалить: '-> {" string "}' part ... – Rizier123

+0

Не уверен, возможно, вы хотели сделать это вместо этого? http://3v4l.org/abA1D. (используя xpath) – briosheje

+0

И если у вас есть 2 уровня корневого уровня? A B? – giuseppe

ответ

2

Элемент верхнего уровня (aka root node) всегда неявный. Вам также нужно отбросить скалярный тип или вы сами получите объект. Объединенные:

$xml = new SimpleXMLElement('<string>-2|-2|635705730515209906|7F2ShUrAQFJmvxTxVgkm2yjghWorOaZe/g==</string>'); 
var_dump((string)$xml); 

Online demo.

Смежные вопросы