|
| checke flere værdier i variabel? Fra : Stig Nørgaard Jepsen |
Dato : 27-07-01 10:36 |
|
Mit spørgsmål er om det er muligt checke en variabel for mere end en værdi i
en IF-sætning?
Altså fx. istedet for kun at teste $var for "stor":
If ($var == "stor") ....
Er det så også muligt at teste flere variabler uden brug af en masse OR's
imellem...
altså noget lignende:
If ($var == ("stor","større","størst"))...
Mvh Stig
| |
Henrik Hansen (27-07-2001)
| Kommentar Fra : Henrik Hansen |
Dato : 27-07-01 10:40 |
|
"Stig Nørgaard Jepsen" <stigen@mail.dk> wrote:
> Mit spørgsmål er om det er muligt checke en variabel for mere end en værdi i
> en IF-sætning?
>
> Altså fx. istedet for kun at teste $var for "stor":
> If ($var == "stor") ....
> Er det så også muligt at teste flere variabler uden brug af en masse OR's
> imellem...
> altså noget lignende:
> If ($var == ("stor","større","størst"))...
en måde at gøre det på er (måske er der flere :):
$str = "hej med dig";
if (ereg("hej|dav|skod", $str)) {
echo "en eller flere er i strengen";
}
--
Henrik Hansen
| |
Stig Nørgaard Jepsen (27-07-2001)
| Kommentar Fra : Stig Nørgaard Jepsen |
Dato : 27-07-01 10:48 |
|
> $str = "hej med dig";
> if (ereg("hej|dav|skod", $str)) {
> echo "en eller flere er i strengen";
> }
Hvorfor tænkte jeg ikke bare på det? :)
/Stig
| |
Johan (27-07-2001)
| Kommentar Fra : Johan |
Dato : 27-07-01 10:59 |
|
> $str = "hej med dig";
> if (ereg("hej|dav|skod", $str)) {
> echo "en eller flere er i strengen";
> }
problemet er at "hejsa" "davser" osv også vil ryge igennem, så vær lidt
varsom
mvh
Johan
| |
Stig Nørgaard Jepsen (27-07-2001)
| Kommentar Fra : Stig Nørgaard Jepsen |
Dato : 27-07-01 20:15 |
|
> > $str = "hej med dig";
> > if (ereg("hej|dav|skod", $str)) {
> > echo "en eller flere er i strengen";
> > }
>
> problemet er at "hejsa" "davser" osv også vil ryge igennem, så vær lidt
> varsom
Det kom jeg faktisk i tanke om. Men glemte det igen.
Er der nogen andre forslag?
/Stig
| |
Jonas Delfs (27-07-2001)
| Kommentar Fra : Jonas Delfs |
Dato : 27-07-01 20:22 |
|
"Stig Nørgaard Jepsen" <stigen@mail.dk> skrev i en meddelelse
news:3b61bd79$0$51710$edfadb0f@dspool01.news.tele.dk...
> > > $str = "hej med dig";
> > > if (ereg("hej|dav|skod", $str)) {
> > > echo "en eller flere er i strengen";
> > > }
> >
> > problemet er at "hejsa" "davser" osv også vil ryge igennem, så vær lidt
> > varsom
>
> Det kom jeg faktisk i tanke om. Men glemte det igen.
> Er der nogen andre forslag?
$str = "hej med dig";
if (ereg("^(hej|dav|skod)$", $str)) {
echo "en eller flere er i strengen";
}
--
Mvh./Best Regards
Jonas Delfs, http://delfs.dk
"Developers are being asked to do more with less, do it faster, and make it
fit with the existing systems and databases." - IDC
| |
Jacob Bunk Nielsen (27-07-2001)
| Kommentar Fra : Jacob Bunk Nielsen |
Dato : 27-07-01 21:03 |
|
"Jonas Delfs" <jonas@nospam.delfs.dk> writes:
> if (ereg("^(hej|dav|skod)$", $str)) {
Men skal det være "simpelt", så kan man naturligvis også bruge:
if ($str == "hej" || $str == "dav" || $str == "skod")
print("et af ordene var med");
.... så er det uden ereg(), og så har man også lært lidt om
||-operatoren
--
Jacob
"There's an old story about the person who wished his computer were
as easy to use as his telephone. That wish has come true, since I no
longer know how to use my telephone." -- Stroustrup
| |
Jonas Delfs (27-07-2001)
| Kommentar Fra : Jonas Delfs |
Dato : 27-07-01 21:08 |
|
"Jacob Bunk Nielsen" <spam@bunk.cc> skrev i en meddelelse
news:m3itgecf7b.fsf@paven.bunk.cc...
> > if (ereg("^(hej|dav|skod)$", $str)) {
>
> Men skal det være "simpelt", så kan man naturligvis også bruge:
>
> if ($str == "hej" || $str == "dav" || $str == "skod")
> print("et af ordene var med");
"Er det så også muligt at teste flere variabler uden brug af en masse OR's
imellem..."
:)
--
Mvh./Best Regards
Jonas Delfs, http://delfs.dk
"Developers are being asked to do more with less, do it faster, and make it
fit with the existing systems and databases." - IDC
| |
Jacob Bunk Nielsen (27-07-2001)
| Kommentar Fra : Jacob Bunk Nielsen |
Dato : 27-07-01 21:15 |
|
"Jonas Delfs" <jonas@nospam.delfs.dk> writes:
> "Er det så også muligt at teste flere variabler uden brug af en masse OR's
> imellem..."
Vupti, jeg overså lige et 'uden'
Men '|' et et regexp er jo også en slags logisk eller :)
--
Jacob
How do I install Linux, there is no setup.exe?
http://www.bunk.cc - nu med Emacs effekt
| |
Stig Nørgaard Jepsen (28-07-2001)
| Kommentar Fra : Stig Nørgaard Jepsen |
Dato : 28-07-01 09:16 |
|
> > problemet er at "hejsa" "davser" osv også vil ryge igennem, så vær lidt
> > varsom
>
> Det kom jeg faktisk i tanke om. Men glemte det igen.
> Er der nogen andre forslag?
Man kan selvfølgelig også lave det sådan her:
$str = "abc";
if (in_array($str ,array ("abc", "123", "zxy","qpr"))) {
echo "Yep, den findes!<br>";
};
/Stig
| |
Henrik Hansen (27-07-2001)
| Kommentar Fra : Henrik Hansen |
Dato : 27-07-01 11:26 |
|
"Johan" <tcr480@ofir.dk> wrote:
>> $str = "hej med dig";
>> if (ereg("hej|dav|skod", $str)) {
>> echo "en eller flere er i strengen";
>> }
>
> problemet er at "hejsa" "davser" osv også vil ryge igennem, så vær lidt
> varsom
men hvis der står hejsa indeholder den jo også hej, kommer lidt an på
hvad man vil opnå men tjekket.
--
Henrik Hansen
| |
Henrik Hansen (27-07-2001)
| Kommentar Fra : Henrik Hansen |
Dato : 27-07-01 12:18 |
|
"Johan" <tcr480@ofir.dk> wrote:
>> >> $str = "hej med dig";
>> >> if (ereg("hej|dav|skod", $str)) {
>> >> echo "en eller flere er i strengen";
>> >> }
>> >
>> > problemet er at "hejsa" "davser" osv også vil ryge igennem, så vær lidt
>> > varsom
>>
>> men hvis der står hejsa indeholder den jo også hej, kommer lidt an på
>> hvad man vil opnå men tjekket.
>
> Jep men personen ville gerne have en nemmere måde at tjekke "if(($var ==
> "hej") || ($var == "farvel"))" og du foreslog "if(ereg("hej|farvel",
> $var))", hvilket ikke før det samme, derfor kan der skabes problemer. Man må
> vel gå ud fra problematikken som brugeren skriver, og du gav muligvis en
> løsning som brugeren kunne bruge, men som ikke kan bruges i alle tilfælde,
> derfor mener jeg det er vigtigt at gøre opmærksom på det. Så eventuelle nye
> brugere ikke bruger koden ved en fejl, og opnår fejl i deres scripts.
>
fair nok :)
--
Henrik Hansen
| |
|
|