Autor Zpráva
LukasMK
Profil *
Zdravím, řeším xml import ve svém eshopu, potřebuji eshopu kategorie kam zboží patří předávat v poli.
Vstup:
<categories>
   <category>Mobilní telefon > Dotykové</category>
   <category>Mobilní telefon > Stylové</category>
</categories>

Systému to potřebuji předat jako pole, tedy takto:
return array(
 array('Mobilní telefon', 'Dotykové')
 array('Mobilní telefon', 'Stylové')
);

Absolutně netuším jak toho dosáhnout, prosím aspoň o navedení co použít. Děkuji.
Majkl578
Profil
Použij SimpleXML nebo DOM.
lukasMK
Profil *
Tak jsem pokročil, napsal jsem si funkci:
function GetCategory($product, $data, $options){
 $categories  = array();
 
 foreach($product->categories->category as $cat){
        
        $categories[] = array();
         foreach(explode(' > ', $cat) as $cat_){
         $categories[] = (string) $cat_;
         };
        
    }
return $categories;
};

Ta funguje, ovšem jinak než bych potřeboval, nevrací:
Kategorie:
Mobilní telefon > Dotykové
Mobilní telefon > Stylové

Ale vrací:
Mobilní telefon
Dotykové
Mobilní telefon
Stylové

Můžete mě prosím opravit?
Alphard
Profil
V tom druhém foreach použijte zásobníkové pole a to až po doběhnutí cyklu zkopírujte do hlavního. Nebo ukládejte hned do hlavního podle explicitního klíče.
lukasMK
Profil *
Děkuji za odpověď, chápu proč tomu tak je. Taky jsem se dočetl, že PHP pro zásobník používá pořád jen array, ale nikde jsem nenašel více informací jak to použít.
Hledal jsem i po fórech, můžete mě prosím ještě nakopnout. Děkuji.


Tak už to mám vyřešeno, děkuji.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0