v2.5.2
Giriş yap

php ile xml okuma Problemi

kenangms1
466 defa görüntülendi

merhaba arkadaşlar yardımınıza ihtiyacım var.

https://korfezotoyedekparca.site/martas1.xml adresinde ürünlerimin bulunduğu bir xml mevcut bu ürünlerin olduğu xml i

<?php

$data = simplexml_load_file("https://korfezotoyedekparca.site/martas1.xml");
$xml = new SimpleXMLElement("<xml/>");
foreach ($data->Products as $Products);
$Products= $xml->addChild("Products");
$Product_elements =$Products->addchild("Product");
$Product_elements->addchild("ID", $data->Result->Products->Product["ID"]);
$Product_elements->addchild("BrandID", $data->Result->Products->Product["BrandID"]);
$Product_elements->addchild("ProductCode", $data->Result->Products->Product["ProductCode"]);
$Product_elements->addchild("Unit", $data->Result->Products->Product["Unit"]);
$Product_elements->addchild("MinOrderAmount", $data->Result->Products->Product["MinOrderAmount"]);
$Product_elements->addchild("BaseOeNr", $data->Result->Products->Product->BaseOeNr);
$Product_elements->addchild("ProductName", $data->Result->Products->Product->ProductNames->ProductName);
$Product_elements->addchild("Price", $data->Result->Products->Product->Pricing->LocalNetPriceWVat);
header('content-type:text/xml');
echo $xml->asXML();

?>

bu kod ile almaya çalışıyorum ancak normalde 310.000 adet ürün var.
Deneme amaçlı 3 tane koydum ancak sadece 1 tanesini yani en baştaki ürünü çekebiliyorum yardımcı olursanız çok sevinirim.

<xml>
<Products>
<Product>
<ID>135557</ID>
<BrandID>174</BrandID>
<ProductCode>KR-PML-PXCRA-002L1</ProductCode>
<Unit>PCE</Unit>
<MinOrderAmount>1</MinOrderAmount>
<BaseOeNr>5525744100</BaseOeNr>
<ProductName>MAKAS LASTIK-(HYUNDAI: H100 MINUBUS 94>08/H100 KAMYONET 94>11/MITSUBISHI: L300 90>11 )UZUN</ProductName>
<Price>6.67267752</Price>
</Product>
</Products>
</xml>

kenangms1
865 gün önce

merhaba; munzevi yazdıklarıkda sonuna kadar haklısın, çoğu yerde görüyorum konu açılmış altında bir sürü bu işle uğraşan kişi
yorum yazmış sorunu çözmeye çalışmış, adam bir daha girip birşey yazmamış, sorunu çözdümü hangi bilgi ile çözdü geri dönüş yok. bu konuda haklısın ben 1 aydır uğraşıyorum bu konu ile ilgili
verdiğin örneklede xpath kısmını yazınca istediklerimi echo ile görüntülüyorum ama xml e kaydederken yine hepsini alıyor. sadece product tag ının altındakileri xml e kaydetmek istiyorum

Array
(

[0] => SimpleXMLElement Object
    (
        [Product] => Array
            (
                [0] => SimpleXMLElement Object
                    (
                        [@attributes] => Array
                            (
                                [ID] => 28342
                                [BrandID] => 18
                                [ProductCode] => ORJ-02505
                                [ProducerCode] => 
                                [MinOrderAmount] => 1
                                [PiecesInBox] => 1
                                [Unit] => PCE
                                [New] => false
                            )

                        [ProductNames] => SimpleXMLElement Object
                            (
                                [ProductName] => UZUN ROT ( AUDI : A4 95-00 )
                            )

                        [BaseOeNr] => SimpleXMLElement Object
                            (
                            )

                        [Pricing] => SimpleXMLElement Object
                            (
                                [ListPriceCurrency] => TLY
                                [LocalCurrency] => TLY
                                [CurrencyRate] => 1
                                [ListPriceWoVAT] => 0
                                [LocalListPriceWVat] => 0
                                [LocalListPriceWoVat] => 0
                                [LocalNetPriceWVat] => 0
                                [LocalNetPriceWoVat] => 0
                                [Discount1] => 42
                                [Discount2] => 0
                                [Discount3] => 0
                                [Discount4] => 0
                                [Discount5] => 0
                                [Discount6] => 0
                                [InDiscount] => false
                            )

                        [Stocks] => SimpleXMLElement Object
                            (
                                [Stock] => Array
                                    (
                                        [0] => 0
                                        [1] => 0
                                        [2] => 0
                                        [3] => 0
                                        [4] => 0
                                    )

                            )

                    )