WinFuture-Forum.de: Php4: Simplexml-alternativen - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Php4: Simplexml-alternativen


#1 Mitglied ist offline   eXochron 

  • Gruppe: aktive Mitglieder
  • Beiträge: 62
  • Beigetreten: 29. April 05
  • Reputation: 0

geschrieben 07. April 2006 - 19:40

hi!
ich hab mir jetzt ein paar kleine xml-skripte mit simple_xml in php5 geschrieben.
nun sollen diese aber auch unter php4 laufen.
in php hab ich bisher noch nicht so viel mit xml gemacht und bin daher gleich am anfang bei simple_xml hängen geblieben.
kennt jemand dafür alternativen oder einen link, wo man die klasse einfach runterladen kann?
konkret betroffen wären die funktionen: simplexml_load_file( ), simplexml_load_string( ), ->asXML( ), ->attributes( ) und ->xpath( ). also, so ziemlich fast alle. :thumbsup:


thx im voraus.
mfg eXo
0

Anzeige



#2 Mitglied ist offline   [U]nixchecker 

  • Gruppe: aktive Mitglieder
  • Beiträge: 347
  • Beigetreten: 17. Mai 05
  • Reputation: 0
  • Wohnort:Bayern
  • Interessen:Informatik, Linux, Rollerbladen, Bodybuilding, GungFu

geschrieben 08. April 2006 - 12:34

Also für PHP4 gibts keinen solchen einfachen Parser wie simple_xml, unter PHP4 ist es schon ne Nummer schwieriger von daher kannst du das vergessen, da kommst du um neucoden nicht drum rum.
0

#3 Mitglied ist offline   eXochron 

  • Gruppe: aktive Mitglieder
  • Beiträge: 62
  • Beigetreten: 29. April 05
  • Reputation: 0

geschrieben 08. April 2006 - 13:01

hmm. dacht ich mir schon fast.
vlt. kann man die datei per regex in ein array umformen?
ich habe dummerweise davon auch kein plan.
oder kennt jemand ein einfaches beispiel für die xml-parser-funktionen?
0

#4 Mitglied ist offline   [U]nixchecker 

  • Gruppe: aktive Mitglieder
  • Beiträge: 347
  • Beigetreten: 17. Mai 05
  • Reputation: 0
  • Wohnort:Bayern
  • Interessen:Informatik, Linux, Rollerbladen, Bodybuilding, GungFu

geschrieben 09. April 2006 - 10:18

Hier mal ein einfaches Beispiel, das ich aus Sachen von mir schnelle Zusammengeschnipselt hab:

xmldatei:

<?xml version = '1.0' encoding = 'UTF-8'?>
<top3>
<resultList>
<result>
<title>Toshiba </title>
<price>2.99 </price>
<merchantName>Snogard </merchantName>
<merchantId> optional </merchantId>
<merchantURL>www.snogard.de </merchantURL>
<compareURL> optional </compareURL>
<offerCatId>optional</offerCatId>
<offerCatName>optional</offerCatName>
<mediumImage>image1.jpg </mediumImage>
<smallImage>mallimage1.jpg </smallImage>
</result>
<result>
<title>Samsung</title>
<price>3.99</price>
<merchantName>Alternate</merchantName>
<merchantId> optional </merchantId>
<merchantURL>www.snogard.de </merchantURL>
<compareURL> optional </compareURL>
<offerCatId>optional</offerCatId>
<offerCatName>optional</offerCatName>
<mediumImage>image1.jpg </mediumImage>
<smallImage>mallimage1.jpg </smallImage>
</result>
</resultList>
<categoryList>optional
<category>
<categoryId/>
<categoryName/>
</category>
</categoryList>
</top3>

<?php


$file = "test.xml";
if (!($fp = fopen($file, "r"))) {
die("could not open XML input");
}
$data = fread($fp, filesize($file));

$p = xml_parser_create();
xml_parse_into_struct($p,$data,$values,$index);
$results = array();

foreach ($values as $key => $val) {

if ($val["tag"] == "RESULTLIST") {
$total_results = $val["attributes"]["nbTotalResults"];
}

if ($val["tag"] == "TITLE"){
$results["title"][] = utf8_decode ($val["value"]);
}
if ($val["tag"] == "MERCHANTNAME"){
$results["merchantname"][] = utf8_decode ($val["value"]);
}
if ($val["tag"] == "PRICE"){
$results["price"][] = utf8_decode ($val["value"]);
}
}

$message;
$count=0;

while($results["title"][$count])
{
$message.=$results["merchantname"][$count] . " ";
$message.=$results["price"][$count] . " ";
$count++;
}

echo "Message:";
echo $message;

?>
0

#5 Mitglied ist offline   eXochron 

  • Gruppe: aktive Mitglieder
  • Beiträge: 62
  • Beigetreten: 29. April 05
  • Reputation: 0

geschrieben 09. April 2006 - 14:28

ich danke dir.
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0