如何从SimpleXMLElement中提取数据?

时间:2012-02-16 17:53:45

标签: php xml arrays xml-parsing

我有一个带有此内容的变量$ foo:

object(SimpleXMLElement)#969 (2) {
  ["@attributes"]=>
  array(1) {
    ["type"]=>
    string(4) "html"
  }
  [0]=>
  string(13) "Viernes Santo"
}

我正在尝试获取“Viernes Santo”的内容,但我不能......我尝试了$foo[0]但是返回了相同的内容......有什么想法?

2 个答案:

答案 0 :(得分:0)

这有效:

(string) $foo 

答案 1 :(得分:0)

SimpleXMLElement的行为就像一个对象,这就是为什么人们会像你一样感到困惑,但它实际上是一种有点不同的语言结构。元素及其数据必须与您要使用的数据类型进行类型转换,因为默认情况下,从SimpleXMLElement函数返回的所有内容都是SimpleXMLElement,如果没有函数进行类型转换,则必须直接进行类型转换。

如果你打电话:

echo $foo; //typecast to a string automatically
$myVar = $foo; //SimpleXMLElement
$myVar = (string)$foo; //typecast to a string