Duyuruyu Kapat
Facebook Gözat
Twitter Gözat

İç içe elemanları nasıl ayıklarım?

Konu, 'PHP' kısmında sufyani tarafından paylaşıldı.

  1. sufyani

    sufyani Yeni Üye

    Kayıt:
    7 Ağustos 2017
    Mesajlar:
    5
    Beğenilen Mesajlar:
    0
    Şehir:
    istanbul
    Merhaba,

    Yardımcı olacak arkadaşlara şimdiden teşekkür ederim.

    PHP:
    <?php
    header
    ('Content-Type: application/xml; charset=utf-8');
    set_time_limit(0);

    echo 
    "<?xml version=\"1.0\" encoding=\"utf-8\" ?>"?>
        <?php
        
    require_once('XmlToCsv.class.php');
        
    $x = new XmlToCsv();
        
    $csv $x->url('genel.xml')
        ->
    output('array')
        ->
    map(array(
            
    'ELEMAN'=>'ELEMAN',
        ))
          
        ->
    autoConvert();

       
    ?>
        <urunler>
            <?

            
    foreach($csv as $key=>$value): ?>
                <?
                
    if($key==0) continue;    
                
    ?>

                <urun>
                    <stok_kodu>INX-<?= htmlspecialchars($value['ELEMAN']); ?></stok_kodu>
                    <stok>0</stok>
                </urun>

                <?php endforeach; ?>
        </urunler>
    Kod:
    <root>
    <item>
       <ELEMAN>Data Metni</ELEMAN>
      </item> 
    </root>
    
    böyle bir dizide rahat ayıklıyorum.

    Kod:
    <root>
    <item>
       <KATEGORI STOK="Data Metni"  AD="Urun metni" MARKA="Marka Metni">
      </item> 
    </root>
    
    Bu içiçe olan xml türünü nasıl ayıklarım.
     
  2. Furkan Onka Uğur

    Furkan Onka Uğur Moderatör Yetkili Kişi

    Kayıt:
    12 Eylül 2008
    Mesajlar:
    3,683
    Beğenilen Mesajlar:
    42
    Şehir:
    Ankara
    XML standardına göre bir elementin birden fazla özelliği olamaz. XML Attributes Bu yüzden hazır kütüphane ile ayıklayamazsınız. Özel bir şey geliştirmeniz gerekmekte ya da mümkünse standart xml oluşturun/kullanın. Verdiğiniz örnek için şu şekle gelmeli:
    Kod:
    <root>
       <item>
          <Kategori>
             <stok>Data metni</stok>
             <ad>Ürün metni</ad>
             <marka>Marka metni</marka>
         </Kategori>
       </item>
    </root>
    
     
  3. sufyani

    sufyani Yeni Üye

    Kayıt:
    7 Ağustos 2017
    Mesajlar:
    5
    Beğenilen Mesajlar:
    0
    Şehir:
    istanbul
    Sevgili Furkan, haklısın xml böyle gelmeli ama gel de sen onu tedarikçilere anlat. Data tasarrufu yapacağınz diye türlü manevralar. Adamlar işine gelirse yapıyor. Daha bu ne ki, bir de xml'i 3'e 5'e bölüyorlar ki baş belası. Birleştir birleştirebilirsen.