0

私は、file_get_contents でラップされた .atom ドキュメントによって取られたこのコードを持っています:

<entry>
    <link type="text/html" rel="alternate" href="..."/>
</entry>

私の目標は、最初の URL をエントリ タグの href 属性に抽出することです。次のように解析しようとしました。

$xml = new SimpleXMLElement($XML_file);
$link = $xml->entry[0]->link;
print $link;

しかし、シェルは私に何の出力も与えません。

4

2 に答える 2

1

試しましたか?リンク要素が空に見えるため。

<entry>
    <link type="text/html" rel="alternate" href="...">Something</link>
</entry>

そしてあなたのphpよりも?

それが私のポイントです、tはまさにあなたがエコーしようとしているものです。属性を取得するには

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

$text = '<entry><link type="text/html" rel="alternate" href="..." /></entry>';
$xml = simplexml_load_string($text);
$linkAttributes = $xml->link->attributes();
foreach ($linkAttributes as $key => $value)  {
    echo $key . '::' . $value . PHP_EOL;
}

出力:

type::text/html
rel::alternate
href::...
于 2012-11-24T19:39:04.973 に答える
0

xmlドキュメントをロードすると、ドキュメントルート要素(この場合<entry>)になります。したがって、次のようにします。

$xml = new SimpleXMLElement($XML_file);
$link = $xml->link;
print $link;
于 2012-11-24T19:40:56.007 に答える