Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用PHP读取googlexml文件_Php_Xml - Fatal编程技术网

用PHP读取googlexml文件

用PHP读取googlexml文件,php,xml,Php,Xml,我需要你的帮助,因为我是PHP初学者,我需要从Google产品提要中提取信息,如下面所示,我如何才能访问标题或链接 我尝试使用simplexml\u load\u文件,但是使用简单的foreach,我找不到正确的方法来隔离单个元素 先谢谢你 <xml version="1.0"> <rss version="2.0" xmlns:g="http://base.google.com/ns/1.0"> <channel>

我需要你的帮助,因为我是PHP初学者,我需要从Google产品提要中提取信息,如下面所示,我如何才能访问标题或链接

我尝试使用simplexml\u load\u文件,但是使用简单的foreach,我找不到正确的方法来隔离单个元素

先谢谢你

<xml version="1.0">
    <rss version="2.0" xmlns:g="http://base.google.com/ns/1.0">
        <channel>
            <title>Title</title>
            <description>Products Brand</description>
            <link>http://www.website.com/</link>
            <item>
                <g:id>1111111</g:id>
                <g:gtin>111111</g:gtin>
                <title>Lorem ipsum dolor sit amet</title>
                <description>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent in orci efficitur lorem aliquam iaculis non nec orci. Aliquam mattis suscipit nisi in faucibus. Nullam ex mauris, mollis at tellus at, pulvinar mollis orci.</description>
                <g:google_product_category>Apparel &amp; Accessories &gt; Shoes</g:google_product_category>
                <g:product_type>Women &gt; New Arrivals &gt; New Arrivals</g:product_type>
                <link>http://www.brand.com/product.html</link>
                <g:image_link>https://www.brand.com/image_00.png</g:image_link>
                <g:additional_image_link>https://www.brand.com/image_00.png</g:additional_image_link>
                <g:condition>new</g:condition>
            </item>

XML有点错误,应该是XML,我添加了任何缺少的结束标记。所以显示一些位的代码是

$xml = simplexml_load_file("NewFile.xml");

foreach ( $xml->channel as $channel )   {
    foreach ( $channel->item as $item ){
        $title = (string)$item->title;
        $link = (string)$item->link;
        echo $title." => ".$link.PHP_EOL;
    }
}

所有这些都是对每个元素的foreach进行处理,然后对其中每个元素的详细信息进行foreach处理。

您需要在这个问题中添加您的实际代码,显示您尝试了什么以及错误是什么。您好@Nigel Ren,感谢您的回复。你是对的,XML不完整,我只是粘贴了第一部分,只是举个例子。我尝试了你的代码,但我收到了一个没有任何输出的页面,你认为可能是错误的代码吗?你可能必须包含更完整的版本-有时是由于名称空间等原因,但如果没有整个文档,就无法判断你可以删除重复的内容,但需要结构