| | |
| Stránka: 1 z 1
| [ Príspevkov: 6 ] | |
Autor | Správa |
---|
Registrovaný: 24.07.09 Prihlásený: 21.11.17 Príspevky: 9 Témy: 6 | Napísal Kapriq: 21.11.2017 12:58 | |
|
Zdravím, Potreboval by som poradiť, našiel som tento script pre konverziu XML do CSV. Všetko funguje super, až na jednu vec. Pri prevode z XML do CSV nastáva chyba ak sa konvertuje napr hodnota "01001" do CSV -> Tak v CSV chýba nula na začiatku = "10001". Viete prosím niekto poradiť čo s tým? Zasielam php: Kód: <?php // In this case XML is // <orders> // <order>...</order> // <order>...</order> // </orders> $string='sps.xml';
if($xml = simplexml_load_file($string)){ $file = fopen('sps.csv', 'w'); if($row = get_object_vars($xml->order[0])){ // First order // First row contains column header values foreach($row as $key => $value){ $header[] = $key; } fputcsv($file, $header,';','"'); foreach ($xml->order as $order) { fputcsv($file, get_object_vars($order),';','"'); } rewind($file); $output = stream_get_contents($file); fclose($file); return $output; }else{ return ''; } } ?> Vzor XML: Kód: <?xml version="1.0" encoding="utf-8"?> <orders> <order> <pocet_balikov>1</pocet_balikov> <kontaktna_osoba>Tereza XXXX</kontaktna_osoba> <adresa>Ulica 58</adresa> <firma></firma> <psc>01001</psc> <mesto>Žilina</mesto> <krajina>SK</krajina> <telefon>+4219123123123</telefon> <email>mail@seznam.cz</email> <notifikacia>3</notifikacia> <var_symbol>10201700000</var_symbol> <cena_dobierky>54.160000</cena_dobierky> </order> </orders> Ďakujem
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | Napísal BX: 21.11.2017 13:55 | |
|
Napíš si vlastnú verziu funkcie get_object_vars, ktorá každú hodnotu vezme ako string bez zmeny. phpková verzia totiž nerobí nič naviac, takže všetko pretypuje implicitne - čiže 001 pretypuje na číslo 1.
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Registrovaný: 24.07.09 Prihlásený: 21.11.17 Príspevky: 9 Témy: 6 | Napísal autor témy Kapriq: 21.11.2017 14:04 | |
|
Díky za nasmerovanie. Ak by sa našiel niekto kto by mi to vedel napísať bol by som vďačný. Ako som písal, kód je dostupný z netu, takže php skúsenosti žiaľ nemám
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | Napísal BX: 21.11.2017 16:17 | |
|
Tak som si to vyskúšal a napísal som blbosť, get_object_vars by malo fungovať správne. Potom je skôr problém v tom xml readri. Skús spustiť toto a napíš, čo to vypísalo Kód: <?php // In this case XML is // <orders> // <order>...</order> // <order>...</order> // </orders> $string='sps.xml';
if($xml = simplexml_load_file($string)){ $file = fopen('sps.csv', 'w'); var_dump(['XML ORDER', $xml->order[0]]); if($row = get_object_vars($xml->order[0])){ // First order var_dump(['ROW', $row]); // First row contains column header values foreach($row as $key => $value){ $header[] = $key; } fputcsv($file, $header,';','"'); foreach ($xml->order as $order) { fputcsv($file, get_object_vars($order),';','"'); } rewind($file); $output = stream_get_contents($file); fclose($file); return $output; }else{ return ''; } } ?>
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Registrovaný: 24.07.09 Prihlásený: 21.11.17 Príspevky: 9 Témy: 6 | Napísal autor témy Kapriq: 21.11.2017 17:21 | |
|
Ďakujem za ochotu, výsledok bez zmeny, výstup je stále rovnaký všetky nuly to dáva preč. Ale vyriešim to inak, nebudem sa trápiť, mám script na export do XML, upravím si len výstupné dáta do txt podoby, a uložím ako txt alebo csv a je to vybavené . Takto som to robil zbytočne tak že som robil XML a z XML som robil prevod do CSV... Ďakujem
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | Napísal BX: 21.11.2017 19:56 | |
|
Chcel som ja vidieť, čo to vypíše, pridal som tam len testovacie výpisy. Ale súhlasím, urob to ako vieš, zbytočne sa netráp s php, ktorému nerozumieš. Nájdi si pripadne nejaký hotový program, alebo použi nejakú online službu.
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
| Stránka: 1 z 1
| [ Príspevkov: 6 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| PHP -> XML v PHP, ASP | 3 | 620 | 01.05.2010 8:47 stenley | | prevod xml do csv v HTML, XHTML, XML, CSS | 1 | 1142 | 29.03.2008 20:55 Triminka | | XML Schema => XML instance document v HTML, XHTML, XML, CSS | 0 | 731 | 02.11.2009 17:46 sINN3r | | PHP a XML (problem) v PHP, ASP | 3 | 285 | 08.12.2012 21:06 stenley | | PHP: Kodovanie pri vytvarani .csv v PHP, ASP | 2 | 609 | 22.08.2011 10:36 camo | | php ->mysql ->php Help.zoradit v PHP, ASP | 4 | 589 | 20.06.2009 12:44 KViki | | PHP a XML v PHP, ASP | 1 | 921 | 27.03.2007 19:16 qacer | | XML v PHP v PHP, ASP | 4 | 458 | 29.09.2010 20:36 stenley | | PHP generovanie XML v PHP, ASP | 4 | 845 | 12.04.2011 14:22 general667 | | php a XML [ Choď na stránku: 1, 2 ] v PHP, ASP | 32 | 2156 | 19.09.2008 15:02 max-m | | PHP a XML v PHP, ASP | 3 | 382 | 26.12.2012 18:32 shaggy | | $pcforum->getForumActivity('PHP, ASP', 2012)/$pcforum->getForumActivity('PHP, ASP', 2022) - Warning: Division by zero v PHP, ASP | 4 | 2288 | 20.05.2022 13:51 JanoF | | PHP webservice XML-RPC v PHP, ASP | 6 | 386 | 28.04.2013 22:59 shaggy | | XML v PHP - chyba v PHP, ASP | 2 | 725 | 26.03.2010 15:25 d0.0b | | php v xml súbore v PHP, ASP | 2 | 314 | 28.04.2013 22:26 Ďuri | | PHP login script v PHP, ASP | 7 | 3413 | 08.02.2010 8:42 juho |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|