Avatar billede learner Praktikant
06. december 2004 - 12:45 Der er 14 kommentarer og
1 løsning

Hvad er det funktionen hedder?

Hej, hvad er det at funktionen hedder som tjekker om xxx er i en variabel.

lad os sige at

$var = "hhjksxxxhjk";
så vil jeg tjekke om xxx findes i $var

hvordan er det nu jeg gør det?
Hvad hedder funktionen

if (funktion_navn("xxx",$var)){}
Avatar billede rednex Nybegynder
06. december 2004 - 12:50 #1
Den hedder strstr()
http://dk.php.net/strstr

Hvis du skal bruge en case-insensitive version skal du kigge på stristr()
Avatar billede learner Praktikant
06. december 2004 - 12:53 #2
du skriver:
Hvis du skal bruge en case-insensitive version

Er du sød at lige at forklare det lidt, jeg forstår ikke...

Takker :o)
Avatar billede Slettet bruger
06. december 2004 - 12:59 #3
strstr outputter alt EFTER dilimeter! ("xxx")
Hvis så stregen er "ljsdflkxxx" vil der ikke være noget output.

Du skal bruge substr_count() som tæller antal gange stregen forekommer:

$var = "hhjksxxx";
if (substr_count($var, "xxx") > 0) {
  //bla bla bla
}

http://dk.php.net/substr_count
Avatar billede learner Praktikant
06. december 2004 - 13:01 #4
ok takker :o)
Avatar billede Slettet bruger
06. december 2004 - 13:03 #5
case-insensitive == ligeglad med store/små bogstaver
Avatar billede jakoba Nybegynder
06. december 2004 - 13:07 #6
case-insensitive:
  if ( "learner" = "learner" ) echo "Ja naturligvis";
  if ( "learner" = "Learner" ) echo "kun hvis vi siger navnet er det samme selvom nr 2 er stavet med stort L";
  if ( "learner" != "learner" ) echo "Nej naturligvis er de ikke forskellige";
  if ( "learner" != "Learner" ) echo "Jo. hvis vi siger navnet er det samme selvom nr 2 er stavet med stort L";

case-insensitive er når vi ignorerer forskellen på store og små bogstaver.
Avatar billede learner Praktikant
06. december 2004 - 13:08 #7
okay, så er det stristr jeg skal bruge. Takker for jeres hurtige svar.

Tak :o)
Avatar billede Slettet bruger
06. december 2004 - 13:11 #8
hvis du bruger stristr() returnerer du alt efter dilimeter (xxx)
substr_count() tæller antal gange dilimeter forekommer.
Derfor er det den funktion som jeg foreslog du sansynligvis skal bruge. (Hvis det forekommer flere end 0 gang)
Avatar billede learner Praktikant
06. december 2004 - 13:18 #9
okay, jeg er lidt forvirret :o)

Her er det jeg har lavet:
if ( ereg("php\.exe", $PHP_SELF) || ereg("php3\.cgi", $PHP_SELF) || ereg("phpts\.exe", $PHP_SELF) ){
    $documentLocation = getenv("PATH_INFO");
} else {
    $documentLocation = $PHP_SELF;
}

if ($_GET['languageid']){
    $languageid = $_GET['languageid'];
} else {
    if (stristr($documentLocation,"minside1.dk")){$languageid = "1";}
}

altså skal den tjekke om minside1.dk står i adresselinien. Hvis den gør, så skal languageid sættes til "1"

Skal jeg så bruge substr_count() eller stristr()
Avatar billede jakoba Nybegynder
06. december 2004 - 13:22 #10
brug stristr.
du kan evt også vælge at bruge substr_count, men den er essentielt beregnet til noget andet (tælle snarere end teste)
Avatar billede learner Praktikant
06. december 2004 - 13:23 #11
okidoki, takker :o)
Avatar billede Slettet bruger
06. december 2004 - 13:24 #12
jakoba -> Er jeg da helt galt på den, når jeg påstår at stristr("lkjsdflkjsdfxxx", "xxx") ikke returnerer noget?
Avatar billede Slettet bruger
06. december 2004 - 13:25 #13
Jeg kan selv se at det åbenbart vil returnere "xxx".
Så blev jeg da SÅ klogere :-)
Avatar billede jakoba Nybegynder
06. december 2004 - 13:26 #14
men brug den korrekt, php er lidt tricky her og der
  if (stristr($documentLocation,"minside1.dk")===FALSE){$languageid = "1";}

tilføjet typefast sammenligning med false for at sikre at den tomme streng "" ikke også vil blive forstået som 'ikke fundet'
Avatar billede learner Praktikant
06. december 2004 - 13:32 #15
tak allesammen :o) jeg har lært en masse !!!
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