Avatar billede cyberdude Nybegynder
06. september 2006 - 10:54 Der er 8 kommentarer og
2 løsninger

split tal op og find højeste

Hejsa

Jeg får fra en side smidt denne stak "kode" i hovedet
- <user>
<id>1109</id>
<uservals>0 Winfield Gomez info@intronetworks.com Butler University IT Solutions Architect Elk Rapids MI USA (658) 667-6944 x 810 http://www.intronetworks.com Peace Microsoft Education 0 4 1 5 0 8/2/2006 0 0</uservals>
<combos>4:0|3:0|2:0|1:0|0:0</combos>
<wordbox0>1:35:16|19:68:35|29:94:72|0:13:83|5:16:22</wordbox0>
<wordbox1>22:63:86|4:13:29|29:19:18|17:0:81|0:80:9|8:90:74|3:14:56|28:25:80|6:6:53</wordbox1>
<wordbox2>73:58:69|80:31:47</wordbox2>
<wordbox3>38:15:95|13:97:35|37:27:38|8:82:63|7:60:74</wordbox3>
<fileIds />
</user>

Jeg har brug for at finde det der står mellem <wordbox0> og </wordbox0>
dvs i eksemplet "1:35:16|19:68:35|29:94:72|0:13:83|5:16:22" herefter her jeg brug for at hive det første tal ud i hver sektion (sektionernen adskilles af en | )
dvs. i eksemplet "1 + 19 + 29 + 0 + 5"
herefter skal jeg bruge 2 variabler en med det højeste tal og en anden med det næst højeste.....
Der kan i <wordbox0>... være fra 2 - 90 sæt tal kombinationer

Nogen ide til hvorledes jeg får "fisket" de informationer ud....

jeg forventer at jeg kan bruge noget ala følgende til at finde det der står inden for <wordbox> tagget :
if (preg_match("#\[link\].*\[/link\]#i", $str)) {
Men hvad så derfra ???
Avatar billede jakobdo Ekspert
06. september 2006 - 11:09 #1
Prøv lige at leg lidt med dette.
if (preg_match('/<wordbox0>(.*?)<\/wordbox0>/', $input,$wordbox0))
{
$parts = explode('|',$match[1]);
foreach($parts AS $part)
{
$numbers = explode(':',$part);
echo $numbers[0];
}
}
Avatar billede jakobdo Ekspert
06. september 2006 - 11:20 #2
Avatar billede cyberdude Nybegynder
06. september 2006 - 11:24 #3
ja nu får jeg tallene...

Det jeg så skal have fat i er, de 2 største tal i variablen $total, disse skal have hver deres egen variabel (eller blot $total[0] og $total[1])
Avatar billede cyberdude Nybegynder
06. september 2006 - 11:25 #4
jeg har ikke noget at bruge det sammenlagte tal til :-)
Avatar billede cyberdude Nybegynder
06. september 2006 - 11:35 #5
fandt den selv :

  echo "Tal: " . implode(',',$total);
    rsort($total);
    reset($total);
      $exp1 = "$total[0]";
    $exp2 = "$total[1]";
Avatar billede jakobdo Ekspert
06. september 2006 - 13:05 #6
Du kunne også lave:

$totalNum = array_sum($total);
Avatar billede cyberdude Nybegynder
01. oktober 2006 - 15:19 #7
fik det til at funge i en kombination af din og min løsning, smid et svar for 1/2 point...
Avatar billede jakobdo Ekspert
01. oktober 2006 - 16:34 #8
Du får et svar!
Avatar billede cyberdude Nybegynder
14. oktober 2006 - 13:32 #9
svar til egen 1/2 del...
Avatar billede jakobdo Ekspert
14. oktober 2006 - 13:41 #10
Takker for point.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester