Permalänk

php simplexml åtkomst

Hej,

jag vill läsa in "temperature value '17'"

från första raden I denna länk. Hur kan jag läsa in och lagra den I en Varchar?

Här är länken:

https://www.yr.no/sted/Norge/Buskerud/Ringerike/Hønefoss/fore...

Vill kunna få fram I liknande format:

echo $xml->location[0]->country;

Permalänk
Medlem

Du kan kolla denna guide om SimpleXML:
https://www.w3schools.com/php/php_xml_simplexml_read.asp

Hur du plockar ut data börjar på sidan två.

Visa signatur

Ryzen 7 7800X3D | ASUS TUF Gaming B650-Plus WIFI | Kingston 32GB (2x16GB) DDR5 6GT/s CL30 FURY Beast | Kingston Fury Renegade M.2 NVMe SSD Gen 4 2TB | MSI RTX 4060 8GB | Fractal Design Define S | MSI MPG A850G 850W | Thermalright Phantom Spirit 120 SE | Windows 11 Pro | AOC 27" AGON AG276QZD2 OLED QHD 240 Hz

Permalänk
Skrivet av Joppis:

Du kan kolla denna guide om SimpleXML:
https://www.w3schools.com/php/php_xml_simplexml_read.asp

Hur du plockar ut data börjar på sidan två.

Hej tack!

Jag ser inte att det finns exempel på mitt problem, I mitt fall är det:

<temperature value="17" unit"celsius"/>

Hur kan man få fram detta?

Mvh

Permalänk
Medlem
Skrivet av naturaljoin:

Hej tack!

Jag ser inte att det finns exempel på mitt problem, I mitt fall är det:

<temperature value="17" unit"celsius"/>

Hur kan man få fram detta?

Mvh

Börja med att använda print_r eller var_dump på resultatet av API-hämtningen. Då kan du se datastrukturen och gå vidare därifrån.

Visa signatur

Ryzen 7 7800X3D | ASUS TUF Gaming B650-Plus WIFI | Kingston 32GB (2x16GB) DDR5 6GT/s CL30 FURY Beast | Kingston Fury Renegade M.2 NVMe SSD Gen 4 2TB | MSI RTX 4060 8GB | Fractal Design Define S | MSI MPG A850G 850W | Thermalright Phantom Spirit 120 SE | Windows 11 Pro | AOC 27" AGON AG276QZD2 OLED QHD 240 Hz

Permalänk
Skrivet av Joppis:

Börja med att använda print_r eller var_dump på resultatet av API-hämtningen. Då kan du se datastrukturen och gå vidare därifrån.

Ja precis, jag har försökt det I ett tag nu.

Mitt försök hittills:

echo "<br>" . $xml->time[0][temperature]->value;

såhär ser strukturen ut:

[forecast] => SimpleXMLElement Object ( [text] => SimpleXMLElement Object ( [location] => SimpleXMLElement Object ( [@attributes] => Array ( [name] => Hønefoss ) [time] => SimpleXMLElement Object ( [@attributes] => Array ( [from] => 2019-09-03 [to] => 2019-09-03 ) [title] => Obs! Note! [body] => Tekstvarsel-tjenesten er nedlagt. The text forecast service is suspended ) ) ) [tabular] => SimpleXMLElement Object ( [time] => Array ( [0] => SimpleXMLElement Object ( [@attributes] => Array ( [from] => 2019-09-03T15:00:00 [to] => 2019-09-03T16:00:00 ) [comment] => Array ( [0] => SimpleXMLElement Object ( ) [1] => SimpleXMLElement Object ( ) ) [symbol] => SimpleXMLElement Object ( [@attributes] => Array ( [number] => 3 [numberEx] => 3 [name] => Delvis skyet [var] => 03d ) ) [precipitation] => SimpleXMLElement Object ( [@attributes] => Array ( [value] => 0 ) ) [windDirection] => SimpleXMLElement Object ( [@attributes] => Array ( [deg] => 47.5 [codeq] => NE [name] => Nordøst ) ) [windSpeed] => SimpleXMLElement Object ( [@attributes] => Array ( [mps] => 2.6 [name] => Svak vind ) ) [temperature] => SimpleXMLElement Object ( [@attributes] => Array ( [unit] => celsius [value] => 17 ) )

Når inte fram. Har du kodtips?

Permalänk
Skrivet av Joppis:

Börja med att använda print_r eller var_dump på resultatet av API-hämtningen. Då kan du se datastrukturen och gå vidare därifrån.

Jag ser att det står => array och då vet jag att det är under denne jag ska köra. Men vet inte hur just denna strulkturen jag länkade nyss körs. Såg du den? kan ta gärna tips att öva på

Permalänk

Problemet är löst!

Permalänk
Hedersmedlem
Skrivet av naturaljoin:

Problemet är löst!

VISA HUR!

Permalänk
Skrivet av Shimonu:

VISA HUR!

$xml->forecast->tabular->time[0]->temperature->attributes()['value'];

Permalänk
Medlem
Skrivet av Shimonu:

VISA HUR!