Autor | Zpráva | ||
---|---|---|---|
HGD Profil |
#1 · Zasláno: 14. 2. 2008, 19:35:40
dobrý večer, potřebuji z xml dokumentu dostat obsah jednotlivých značek do proměnných. Mám XML:
<?xml version="1.0" encoding="utf-8"?> <install> <name>Banners</name> <autor>Eda Utopenej</autor> <verze>1.0.0</verze> <copyright>(C) 2005 Open Source Matters. All rights reserved.</copyright> <licence>http://www.gnu.org/copyleft/gpl.html GNU/GPL</licence> <popis>This component manages banners and banner clients</popis> </install> a po dlouhém hledání a brouzdání jsem našel script PHP na parsování (pro mě funkční) $file="ban.xml"; $znacka=""; function pocatek($parser, $nazev, $atributy){ global $znacka; $znacka=$nazev; } function konec($parser, $nazev){} function znaky($parser, $data) { global $znacka; if(trim($data)!=''){ echo $znacka.' = '.trim($data).'<br>'; } } $parser=xml_parser_create(); xml_set_element_handler($parser, "pocatek", "konec"); xml_set_character_data_handler($parser, "znaky"); if(!($soubor=fopen($file, "r"))){ die("Nelze otevřít soubor ".$file."!"); }else{ while ($d = fread($soubor, 4096)){ if(!xml_parse($parser, $d, feof($soubor))){ die("Chyba XML v souboru ".$file." na řádku ".xml_get_current_line_number($parser).""); } } xml_parser_free($parser); } Poslední problém je v tom, že jsem se snažil uložit jednotlivé značky do pole, a pak je v cyklu vypisovat a přiřazovat, ale jediný čeho jsem docílil bylo, že názvy ZNAČEK se vypisovaly po písmenku a ke každému se přihodil obsah |
||
Leo Profil |
#2 · Zasláno: 14. 2. 2008, 19:39:59
A co nejake vestavene fce PHP pro praci xml? Leo
|
||
HGD Profil |
#3 · Zasláno: 14. 2. 2008, 19:44:31
o jednej sem čet, už newim jak se jmenuje, ale je podporována až od PHP v.5, a ikdyž už nyní je prakticky všude, tak třeba na localu mam 4ku. Prostě potřebuju něco funkční i pro starší verze PHP
|
||
Leo Profil |
#4 · Zasláno: 14. 2. 2008, 19:59:52
"tak třeba na localu mam 4ku."
Na to bych se nevymlouval. Prave tuhle instalaci je nejjednodussi zmenit :-) Leo |
||
HGD Profil |
#5 · Zasláno: 14. 2. 2008, 20:15:44
to já vim, ale de o to, že newim, kde to kdy na jakym serveru budu používat, tak to chci mít rači funkční i pro to starší PHP
|
||
HGD Profil |
#6 · Zasláno: 15. 2. 2008, 21:33:02
poradíte někdo kloudnou odpovědí???
Já buď dostanu vždycky jedničky nebo jenom jedno písmeno značky :( |
||
Leo Profil |
#7 · Zasláno: 15. 2. 2008, 22:22:56
DOM XML pro PHP4, simplexml pro PHP5, asi, vic viz manual: www.php.net, kdyz vpravo zadate do hledani xml tak vam neco vypadne, Leo
|
||
djlj Profil |
#8 · Zasláno: 16. 2. 2008, 00:26:19
Pro php5 vynikající SimpleXML: http://cz.php.net/simplexml
|
||
HGD Profil |
#9 · Zasláno: 16. 2. 2008, 01:00:12
já sem si ted nainstaloval PHP5 a to DOM XML hází chyby, a i na PHP4 házelo:
Fatal error: Call to undefined function domxml_open_file() in C:\Program Files\EasyPHP 2.0b1\www\xml.php on line 38 SimpleXML na 5ce mi de, ale rači bych to měl opravdu postavený i pro PHP4 |
||
djlj Profil |
#10 · Zasláno: 16. 2. 2008, 02:07:15
Fatal error: Call to undefined function domxml_open_file()
Holt nemáš v php.ini povolené potřebné rozšíření. rači bych to měl opravdu postavený i pro PHP4 Proč? Od čtverky se postupně upouští. Spíš bys měl psát skripty tak, aby fungovaly v budoucích verzích (php6) a ne v předchozích. Jen sám sebe zbytečně omezuješ. |
||
HGD Profil |
#11 · Zasláno: 16. 2. 2008, 10:07:52
takže rači to postavit na funkci SimpleXML? jestli se mi t teda podaří :)
|
||
Časová prodleva: 16 let
|
0