/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Streng starter med...
Fra : Lasse Hedegaard


Dato : 14-08-03 02:11

Jeg har behov for at lave noget ala:

if (ereg("^123456", $foo)) { $bar = ("hest"); }
elseif (ereg("^432212", $foo)) { $bar = ("hest"); }
elseif (ereg("^753641", $foo)) { $bar = ("kat"); }
elseif (ereg("^765323", $foo)) { $bar = ("kat"); }
elseif (ereg("^141156", $foo)) { $bar = ("kat"); }
elseif (ereg("^969593", $foo)) { $bar = ("kat"); }
else { $bar = ("cementblander"); }

Men er det ikke meget krævende (der kommer til at være MANGE
(hundrevis) der skal tjekkes hver gang scriptet køres.

Hvordan kan jeg løse det på en smartere måde. Måske vil det være en
fordel at have en fil med dataene (de skal rettes løbende). Bemærk, at
der er flere "heste" og "katte".

Venligst,
Lasse Hedegaard

--
http://www.simlock.dk/ - låsesmeden til din simlock

 
 
Benny Nissen (14-08-2003)
Kommentar
Fra : Benny Nissen


Dato : 14-08-03 02:59


"Lasse Hedegaard" <laxxe@nospam.dk> skrev i en meddelelse
news:1doljv035miqdfs4rcbk95nsiajlnap957@news.tele.dk...
> Jeg har behov for at lave noget ala:
>
> if (ereg("^123456", $foo)) { $bar = ("hest"); }
> elseif (ereg("^432212", $foo)) { $bar = ("hest"); }
> elseif (ereg("^753641", $foo)) { $bar = ("kat"); }
> elseif (ereg("^765323", $foo)) { $bar = ("kat"); }
> elseif (ereg("^141156", $foo)) { $bar = ("kat"); }
> elseif (ereg("^969593", $foo)) { $bar = ("kat"); }
> else { $bar = ("cementblander"); }
>
> Men er det ikke meget krævende (der kommer til at være MANGE
> (hundrevis) der skal tjekkes hver gang scriptet køres.
>
> Hvordan kan jeg løse det på en smartere måde. Måske vil det være en
> fordel at have en fil med dataene (de skal rettes løbende). Bemærk, at
> der er flere "heste" og "katte".

Kan du ikke smide alle mulighederne i et array og så $foo som key og derved
outputte $bar som value ?
Noget i stil med:

<?php
$foo = substr($foo,0,6);
$bar = "cementblander";
$arr = array(
"123456" => "hest",
"432212" => "hest",
"753641" => "kat",
"969593" => "kat"
);
if($arr[$foo])
{
$bar = $arr[$foo];
}
echo $bar;
?>


--
Benny Nissen






Lasse Hedegaard (18-08-2003)
Kommentar
Fra : Lasse Hedegaard


Dato : 18-08-03 21:34

Benny Nissen skrev:

>Kan du ikke smide alle mulighederne i et array og så $foo som key og derved
>outputte $bar som value ?

Det virker fint nok, men nu sidder jeg fast igen

Jeg skal bruge dataene over flere omgange.

En gang til at finde ud af, om der er tale om en hest, en kat, eller
hvad det nu kan være - og på et andet tidspunkt til at finde ud af, om
det er et dyr, den cementblander der, eller noget der IKKE er i
databasen.

Get it? Hvordan klarer jeg den? Lige nu har jeg lavet det som en
funktion:

function skumbanan($data)

{
$foo = substr($foo,0,6);
$bar = "cementblander";
$arr = array(
"123456" => "hest",
"432212" => "hest",
"753641" => "kat",
"969593" => "kat"
);
if($arr[$foo])
{
$bar = $arr[$foo];
}
echo $bar;
}

Men hvis jeg laver noget if (skumbanan($bla) == ("12345")) - så får
jeg jo blot outputtet ($bar).

Venligst,
Lasse Hedegaard

--
http://www.simlock.dk/ - låsesmeden til din simlock

Lasse Hedegaard (18-08-2003)
Kommentar
Fra : Lasse Hedegaard


Dato : 18-08-03 21:40

Sagen er altså...

Der er 6 cifre i inputtet der afgør hvilken af de 3 kategorier vi
snakker om: dyr, ting (fx cementblander), eller ukendt.

Desuden skal der (hvis der ikke er tale om ukendt) sendes et output,
som fortæller hvad det er.

Venligst,
Lasse Hedegaard

--
http://www.simlock.dk/ - låsesmeden til din simlock

Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408935
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste