SimpleXML返回数组而不是字符串或INT

时间:2013-12-20 20:16:28

标签: php simplexml file-get-contents

我在PHP中使用simpleXML有问题。我的问题是,我得到数组而不是字符串或整数。

通过file_get_contents即时获取关注xml

<?xml version="1.0" encoding="UTF-8"?> 
<data>
    <name>579</name>
    <price>46</price>
</data> 

在即时通讯中即时使用:

$xml = simplexml_load_string( file_get_contents( $url ) );
print_r( $xml->price) // returns array( 0 => "46" ) instead of 46

有人知道我怎么能得到字符串吗?

2 个答案:

答案 0 :(得分:2)

您需要明确地将其强制转换为字符串(在这种情况下为int):

$price = (string) $xml->price;
echo $price; // => string(2) "46"

答案 1 :(得分:0)

您需要使用strval将其从SimpleXMLElement转换为字符串。如果您想要获取整数值,请使用intval

使用strval

$xml = simplexml_load_string( file_get_contents( $url ) );
$price = strval ($xml->price);

intval

$xml = simplexml_load_string( file_get_contents( $url ) );
$price = intval ($xml->price);