如何从 url 获取 xml 上的特定数据并将其打印到 php


How to fetch specific data on xml from url and print it to php?

我有这个有效的php xml代码:

<?php
    $str=<<<XML
<bookstore>
    <book category="COOKING">
        <title lang="en">Everyday Italian</title>
        <author>Giada De Laurentiis</author>
        <year>2005</year>
        <price>30.00</price>
    </book>
    <book category="CHILDREN">
        <title lang="en">Harry Potter</title>
        <author>J K. Rowling</author>
        <year>2005</year>
        <price>29.99</price>
    </book>
    <book category="WEB">
        <title lang="en-us">XQuery Kick Start</title>
        <author>James McGovern</author>
        <year>2003</year>
        <price>49.99</price>
    </book>
    <book category="WEB">
        <title lang="en-us">Learning XML</title>
        <author>Erik T. Ray</author>
        <year>2003</year>
        <price>39.95</price>
    </book>
</bookstore>
XML;
    $data = new SimpleXMLElement($str);
?>
<table border>
    <tr>
        <th>Title</th>
        <th>Author</th>
        <th>Year</th>
        <th>Price</th>
    </tr>
    <?php
        foreach ($data->book as $book) {
            if ($book->price == 39.95) {
    ?>
    <tr>
        <td><?php echo $book->title; ?></td>
        <td><?php echo $book->author; ?></td>
        <td><?php echo $book->year; ?></td>
        <td><?php echo $book->price; ?></td>
    </tr>
    <?php
            }
        }
    ?>
</table>

您注意到 XML 位于代码中。我现在想要的只是消除该XML代码并替换或只是从w3schools http://www.w3schools.com/php/books.xml 获取它。先生,你能帮我吗,因为我被这个困了一个星期?

如果要

从外部源加载它,只需使用该simplexml_load_file()

$data = simplexml_load_file('http://www.w3schools.com/php/books.xml');

输出的外观

检查以下内容

$xml=simplexml_load_file('http://www.w3schools.com/php/books.xml');
var_dump($xml);

试试这个:

$content = file_get_contents('http://www.w3schools.com/php/books.xml');回声$content;

简单!