我是一個通過PHP simplexml_load_file讀出XML的初學者。我的問題是讀出具有ID的單個元素作爲屬性。此外,我想以黑色回顯所有類型(通過十六進制搜索:#000000,因爲它甚至不是變體中的相同ID)。雙foreach循環失敗,通過讀出xml attribut與simplexml PHP
見下面我舉的例子:
file.xml
<products>
<types>
<name>Artikel</name>
<description>blablabla</description>
<variations>
<variation id=2>
<name>black</name>
<colors>
<color index="1">#000000</color>
</colors>
</variation>
<variations>
<variation id=1>
<name>white</name>
<colors>
<color index="2">#FFFFFF</color>
</colors>
</variation>
</variations>
</types>
<types>
<name>Artikel</name>
<description>blablabla</description>
<variations>
<variation id=7>
<name>black</name>
<colors>
<color index="6">#000000</color>
</colors>
</variation>
<variations>
<variation id=90>
<name>black</name>
<colors>
<color index="3">#000000</color>
</colors>
</variation>
</variations>
</types>
</products>
使用PHP我可以找到所有的它:
<?php
$products = simplexml_load_file(xml.file);
/*echo '<pre>';
print_r ($products); //all products
echo '</pre>';*/
foreach ($products as $types)
{
echo '<pre>';
print_r ($types);
echo '</pre>';
foreach ($products->variation as $variation)
{
echo '<pre>';
echo $variation;
echo '</pre>';
}
if (color == #00000) /*I know this is wrong, it is just my base for solving*/
{
echo types;
}
}
?>
代碼PHP的Projekt:
<?php
$productTypes = simplexml_load_file('http://api.spreadshirt.net/api/v1/shops/611779/productTypes?fullData=true');
/*echo '<pre>';
print_r ($productTypes);
echo '</pre>';*/
foreach ($productTypes as $productType)
{
/*echo '<pre>';
print_r ($productType);
echo '</pre>';*/
foreach ($productType->appearances->appearance[0] as $appearances)
{
//echo $appearances. '</br>';
foreach ($appearances->colors->color['#000000'] as $color)
{
echo $color. '</br>';
if ($color == 'black');
{
echo $color;
}
}
}
}
?>
顯示您的print_r($ products); –
嗨,謝謝你的回答,但對不起,它不再工作。我不知道爲什麼。 :( – sepp
我也在進行中找到這個錯誤! – sepp