2011-06-29 10 views
0

現在、以下のコードを使用してxml文書を読み取ります。PHPを使用してXML文書の最後の項目を表示

このコードは、XMLドキュメントのすべての書籍を出力します。最初の5冊のみを表示したり、特定の書籍のタイトルを表示することが可能かどうかは疑問です。最初の5冊のためだった

 for($i=0;$i<5;$i++){ 
$book = $books[$i]; 
//Other Logic Here 
} 

に声明

foreach($books as $book) 

ため


$doc = new DOMDocument(); 
    $doc->load('books.xml'); 
    $books = $doc->getElementsByTagName("books"); 
    foreach($books as $book) 
    { 
    $authors = $book->getElementsByTagName("author"); 
    $author = $authors->item(0)->nodeValue; 
    $publishers = $book->getElementsByTagName("publisher"); 
    $publisher = $publishers->item(0)->nodeValue; 
    $titles = $book->getElementsByTagName("title"); 
    $title = $titles->item(0)->nodeValue; 
+0

代わりに 'for'を使用しますか? –

答えて

0

答えはXPathです。

  • /books/book[position() < 5]
  • /books/book[author = 'xyz']
  • 最初の5冊を返し、特定の著者のすべての書籍特定のタイトル
  • /books/book[title = 'xyz']/author
  • /books/book[title = 'xyz']返しブック特定のタイトル
と本の著者を返します。

...など。参照:http://php.net/manual/en/class.domxpath.php

関連する問題