您好,我正在嘗試從XML文件中提取一些數據。但是,它不能正常使用我的解決方案。從XML文件中獲取特定結果
XML文件:
<?xml version='1.0' encoding='UTF-8'?>
<m4n xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="datafeeds/ext/m4n-datafeeds.xsd">
<dataHeader>
<exportType>stream</exportType>
<exportId>2000433</exportId>
<rows>40434</rows>
<lastChecked>2014-07-02 10:12:24.41</lastChecked>
<lastUpdated>2014-07-02 10:13:36.09</lastUpdated>
<parserLocale>nl_NL</parserLocale>
<streamCurrency>EUR</streamCurrency>
<name>VALUE</name>
<description><![CDATA[]]></description>
</dataHeader>
<data>
<record>
<recordHash><![CDATA[-2147395708]]></recordHash>
<column name="url"><![CDATA[VALUE]]></column>
<column name="title"><![CDATA[VALUE]]></column>
<column name="description"><![CDATA[VALUE]]></column>
<column name="offerid"><![CDATA[VALUE]]></column>
<column name="image"><![CDATA[VALUE]]></column>
<column name="price"><![CDATA[VALUE]]></column>
<column name="category"><![CDATA[VALUE]]></column>
<column name="subcategory"><![CDATA[VALUE]]></column>
<column name="stock" />
<column name="timetoship"><![CDATA[VALUE]]></column>
<column name="ean"><![CDATA[VALUE]]></column>
<column name="price_shipping"><![CDATA[VALUE]]></column>
<column name="price_old" />
<column name="vendor"><![CDATA[VALUE]]></column>
<column name="category_path" />
<column name="description2"><![CDATA[VALUE]]></column>
<column name="largeimage"><![CDATA[VALUE]]></column>
<column name="author"><![CDATA[VALUE]]></column>
<column name="column0"><![CDATA[VALUE]]></column>
<column name="column1"><![CDATA[VALUE]]></column>
<column name="column2"><![CDATA[VALUE]]></column>
<column name="column3"><![CDATA[VALUE]]></column>
<column name="column4"><![CDATA[VALUE]]></column>
<column name="column5"><![CDATA[VALUE]]></column>
<column name="column6"><![CDATA[VALUE]]></column>
<column name="column7"><![CDATA[VALUE]]></column>
<column name="column8"><![CDATA[VALUE]]></column>
<column name="column9"><![CDATA[VALUE]]></column>
<column name="sku"><![CDATA[VALUE]]></column>
<column name="size"><![CDATA[VALUE]]></column>
<column name="height"><![CDATA[VALUE]]></column>
</record>
</data></m4n>
我想提取如下: URL = VALUE 標題= VALUE 等等,所以basicly我想列的名稱和值列在一起。
我嘗試以下方法:
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, 'url');
$data = curl_exec($ch);
curl_close($ch);
$xml = new SimpleXMLElement($data);
foreach($xml->data as $data)
{
foreach($data->record as $record)
{
foreach($record->column as $column)
{
foreach($column->attributes() as $key => $value)
{
echo $key." - ".$value."<br/>";
}
}
}
}
可能有人請看看
你的腳本有什麼問題?我看到的唯一錯誤是您沒有關閉''和''標籤... XML必須對'SimpleXMLElement'有效。 –
@MihaiIorga問題是我沒有得到我想要的結果。我只接到這個詞:'name' – user3824329
@MihaiIorga不錯,但是你可以看到你得到的結果:name - url等等。但是我想要達到的是在這個例子中名稱等於url的列中的內容值。但我想所有的記錄不只是網址。 – user3824329