/ Forside/ Teknologi / Udvikling / PHP / Spørgsmål
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
joker i if sætning.
Fra : Dinah
Vist : 438 gange
140 point
Dato : 20-05-07 20:45

Jeg vil gerne sige

Hvis variabel indeholder et a - echo bla bla

Kan man det? altså anvende en slags joker i if sætning.

Jeg er med på at den ca ser sådan ud

if($var)=='a' {echo "bla bla";}

Det vil sige at hvis man har en variabel der indeholder orden abe, så skal den forstå den som sand, og udskrive...

 
 
Kommentar
Fra : e.c


Dato : 20-05-07 20:49

prøv med 'a?'

Kommentar
Fra : Dinah


Dato : 20-05-07 20:52

Det virker ikke??

Kommentar
Fra : kettedk


Dato : 20-05-07 21:22

Prøv at lave et par mellemrum:

Kode
if($var)=='a' { echo "bla bla"; }

Ellers prøv det her:

Kode
if($var)=='*a*' { echo "bla bla"; }


//Kettedk

Kommentar
Fra : ajuul


Dato : 20-05-07 21:47

Kære Dinah.

1) Den nemmeste og hurtigst måde er:
Kode
if(strpos($var,'a')>0) { echo "blabla"; }


mvh
ajuul

Kommentar
Fra : Dinah


Dato : 20-05-07 22:32

ajuul, det virker, men hva hvis jeg vil ha det til at matche et 2 cifret tal? kan man det? jeg forstår ikke helt hvordan den er sat sammen....

Kommentar
Fra : præceptor


Dato : 23-05-07 16:40

Undskyld at jeg blander mig, men mener du måske noget a la dette:

<?php
$var = (string) 1899;
if(strpos($var,'99')>0) { echo "blabla<br>"; }
?>

Som du kan se, så laves tallet 1899 om til en streng ved at caste med (string), og eftersom 99 indgår i 1899 så finder strpos() nålen i høstakken.

I det viste tilfælde bliver strpos()'s resultat 2, og da 2 er større end 0, så skrives der.

Du skal lige være opmærksom på at strengens første position er 0, så logikken vil altså ikke reagere positivt på noget der starter i strengens første position.

Kommentar
Fra : ajuul


Dato : 23-05-07 22:12

Det er helt korrekt, hvad præceptor skriver.
For at undgå problemet med position 0 skal man faktisk skrive:

<?php
$var = (string) 1899;
if(!(strpos($var,'99')===false) && (strpos($var,'99')>=0)) { echo "blabla<br>"; }
?>
Jeg har ikke tjekket det, men det burde virke

ajuul

Du har følgende muligheder
Dette spørgsmål er blevet annulleret, det er derfor ikke muligt for at tilføje flere kommentarer.
Søg
Reklame
Statistik
Spørgsmål : 177429
Tips : 31962
Nyheder : 719565
Indlæg : 6407950
Brugere : 218878

Månedens bedste
Årets bedste
Sidste års bedste