1

私は実際にこれらのXMLのものに慣れていません。http://www.php.net/manual/en/intro.dom.phpを使用して、DOMDocument、DOMNOdeListなどについて理解しています。

だからここに問題があります。

http://jobhits.co.uk/services/rss?k=job

上記のフィードはXMLドキュメントを返します。これらのコードを使用して、タイトル、説明、リンクなどのタグ名を正常に取得できます

$doc->load('http://jobhits.co.uk/services/rss?k=job');
$items = $doc->getElementsByTagName("item");

foreach($items as $item){
    $titles[] = $item->getElementsByTagName("title");
}

問題は、そのドキュメントに特定の「タグ名のような」ものがあることです

<a10:updated></a10:updated>

使ってみました

$update[] = $item->getElementsByTagName("a10:updated");

..これは失敗です

これがサンプルxmlhttp ://piratelufi.com/ark/gettagname.xmlです。または、上記のloadメソッド内で文字列を使用できます:)

ところで、simpleXMLと事前定義されたクラスをできるだけ使用することはできません。おかげで:D

4

2 に答える 2

2

あなたが探しているgetElementsByTagNameNS

于 2011-07-26T21:04:20.197 に答える
2

a10jsutは、更新された要素が別の名前空間からのものであることを示します。コロン:は、このコンテキストでは特殊文字です。サンプルxml(後者のURL)の最初に、この名前空間の定義があります<rss xmlns:a10="http://www.w3.org/2005/Atom" version="2.0">。だからあなたは必要getElementsByTagNameNSです。私は次の線に沿って何かを推測します:getElementsByTagNameNS("http://www.w3.org/2005/Atom","updated")役立つかもしれません。

于 2011-07-26T21:06:39.153 に答える