Permalänk
Medlem

Php problem med array.

Hej!

Försöker få ut siffororna från en rad text på en hemsida och har lyckats komma ganska långt med det. (php novis)

Problemet nu är att jag vill kolla om arrayn har ett eller två värden
If (count($Wind) >= 2){
fungerar inte.

När jag dumpar arrayn ser det ut så här:

array (size=1) 0 => array (size=2) 0 => string '5' (length=1) 1 => string '10' (length=2)

Antar det beror på att arrayn på något vis är tvådimensionell (?).
Hur kan jag ändra det eller kolla om det är ett eller två värden?

Koden letar efter 3c under vind vid marken.
Därefter : .
Och sen vilka siffror som står mellan : och knop.
Det som står efter 3a,3b,3c,4a,4b,4c: är ostlig vind fem till tio knop
Men ändrar man till tex: Område 3a,3b,3c,4a,4b,4c: O/S-10 knop. Ostlig/sydlig 10 knop så ka det bli ett värde.

<?php $html = "Vind vid marken Område 1a,1b,1c,2a,2b: O-SO/15-25 knop. Område 3a,3b,3c,4a,4b,4c: O/5-10 knop. Vind och temperatur 2000ft: I hela området: 130/20kt +7, efterhand 130/20kt +6 FL50: I hela området: 170/15kt +2 FL100: I hela området: 240/10kt -6, efterhand 230/10kt -6 Lägsta QNH 1007 hPa Tilläggsinformation Förekomsten av TCU eller CB innebär alltid risk för måttlig till svår isbildning och turbulens, även om det inte framgår explicit av prognosen. </pre>"; //file_get_contents('https://aro.lfv.se/Links/Link/ViewLink?TorLinkId=310&type=MET'); $FL0 = get_Wind($html, "Vind vid marken", "</pre>"); $FL0 = get_Wind($FL0, "3c", "."); $FL0 = get_Wind($FL0, ":", "knop"); preg_match_all('!\d+!', $FL0, $Wind); var_dump($Wind); echo "<br>"; If (count($Wind) >= 2){ Echo "Markvind är ca " . Round($Wind[0][0]*0.514444444) . " m/s och med byar upp till ca " . round($Wind[0][1]*0.514444444) . " m/s.<br><br>"; } else{ Echo "Markvind är ca " . Round($Wind[0][0]*0.514444444) . " m/s.<br><br>"; } function get_Wind($str, $needle_begin, $needle_end) { $begin = strpos($str, $needle_begin); $end = strpos($str, $needle_end, $begin); $str = substr($str, $begin , $end - $begin); echo $str . "<br><br>"; return trim($str); } ?>

Dold text
Permalänk
Medlem

count($wind[0])

Permalänk
Medlem

Det är verkligen så lätt?
Tänkte på det efter jag stängt ner datorn.

Tack!