2

次のxmlを解析する必要があります。

Array
(
 [0] => SimpleXMLElement Object
    (
        [@attributes] => Array
            (
                [rel] => http://schemas.google.com/g/2005#other
                [address] => xyz@gmail.com
                [primary] => true
            )

    )

[1] => SimpleXMLElement Object
    (
        [@attributes] => Array
            (
                [rel] => http://schemas.google.com/g/2005#other
                [address] => abc@gmail.com
                [primary] => true
            )

    )
)

上記の xml があり、この xml からアドレスのみを取得する必要があります。

foreach ($result as $title) {
   $email[$count++]=$title->attributes()->address->__toString; 
}
debug($email);

その結果がこれです。しかし、私はアドレスだけが欲しいです。助けが要る。

Array
(
[0] => SimpleXMLElement Object
    (
    )

[1] => SimpleXMLElement Object
    (
    )
)
4

1 に答える 1

1

参照: http://www.php.net/manual/en/simplexmlelement.attributes.php

戻り値

タグの属性をループするために反復できる SimpleXMLElement オブジェクトを返します。

解決策は、値を文字列にキャストすること
です。次に例を示します。

$email[$count++]=(string)$title->attributes()->address;

または、戻り値を繰り返しても機能します

例えば:

foreach($title->attributes() as $key => $val)
{
  if ($key == 'address') $email[$count++] = $val;
}
于 2012-11-13T19:26:40.423 に答える