Trädvy Permalänk
Medlem
Plats
127.0.0.1
Registrerad
Jan 2006

Hämta från XML fil

Har en XML fil som ser ut så här:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <DATA> <PROGRAM NAME="LogTemp"> <VERSION>2.22.0.89</VERSION> </PROGRAM> <TEMPERATURES> <SENSOR ROMID="F50008014D283710"> <VALUE>9.75</VALUE> <DATE> <YEAR>2009</YEAR> <MONTH>6</MONTH> <DAY>3</DAY> </DATE> <TIME> <HOUR>23</HOUR> <MIN>14</MIN> <SEC>48</SEC> </TIME> </SENSOR> </TEMPERATURES> </DATA>

Det är värdet i raden "<VALUE>9.75</VALUE>" som jag vill hämta ut och skriva ren i en php fil.

Någon som har lust att bidra med ett kod exempel hur man skulle kunna göra i PHP?

Trädvy Permalänk
Medlem
Plats
Kristianstad
Registrerad
Apr 2009

Använd dig av XML-parsing. Exempel hittar du här: http://se2.php.net/xml

Annars kan du göra lätt för dig och använda dig av split, http://se2.php.net/split

Trädvy Permalänk
Medlem
Plats
127.0.0.1
Registrerad
Jan 2006
Citat:

Ursprungligen inskrivet av whzfred
Använd dig av XML-parsing. Exempel hittar du här: http://se2.php.net/xml

Annars kan du göra lätt för dig och använda dig av split, http://se2.php.net/split

Lust att visa ett exempel på hur jag hämtar ut detta värde?

Trädvy Permalänk
Medlem
Plats
Stockholm
Registrerad
Jan 2004

<?PHP $data = file_get_contents('in.xml'); preg_match('%<value>(?P<value>.*?)</value>$%simx', $data, $regs); file_put_contents("1.txt", $regs['value']); ?>

Och ett tredje sätt, regexp.

Trädvy Permalänk
Medlem
Plats
Göteborg
Registrerad
Maj 2007

$xml = simplexml_load_file("Filen.xml"); $value = $xml->xpath("/DATA/TEMPERATURES/SENSOR/VALUE"); /* $value[0] innehåller nu 9.75 */

Trädvy Permalänk
Medlem
Plats
Kristianstad
Registrerad
Apr 2009
Citat:

Ursprungligen inskrivet av bjornie

$xml = simplexml_load_file("Filen.xml"); $value = $xml->xpath("/DATA/TEMPERATURES/SENSOR/VALUE"); /* $value[0] innehåller nu 9.75 */

Detta var verkligen smidigt.