Zoeken in string
Is er een functie om te zoeken in een string naar een voorwaarde, en die zo werkt:
de functie strpbrk geeft namelijk een error
(Fatal error: Call to undefined function: strpbrk() in /adres/ on line 75)
omdat die de positie terug geeft!
de functie strpbrk geeft namelijk een error
(Fatal error: Call to undefined function: strpbrk() in /adres/ on line 75)
omdat die de positie terug geeft!
Dit geeft de positie aan, ik moet juist alleen hebben dat die true or false terug geeft!
Ja, en? Wat is het probleem? Als de waarde er niet in zit krijg je FALSE, als 'ie er wel in zit krijg je een waarde (dus TRUE).
EDIT: Afgaande op de door jou gegeven foutmelding lijkt het probleem me overigens niet dat strpbrk() een positie teruggeeft (in principe is elke niet-FALSE waarde TRUE) maar meer dat je PHP4 gebruikt, en die heeft de functie strpbrk() nog niet.
EDIT: Afgaande op de door jou gegeven foutmelding lijkt het probleem me overigens niet dat strpbrk() een positie teruggeeft (in principe is elke niet-FALSE waarde TRUE) maar meer dat je PHP4 gebruikt, en die heeft de functie strpbrk() nog niet.
Gewijzigd op 19/12/2005 13:38:00 door Willem vp
strstr
(PHP 3, PHP 4 , PHP 5)
strstr -- Vindt eerste voorkomen van een string
Beschrijving
string strstr ( string haystack, string needle)
Geeft alles van haystack van het eerste voorkomen van needle tot het einde.
Als needle niet gevonden wordt, retourneert deze functie FALSE.
Als needle geen string is, wordt deze geconverteerd naar een integer en toegepast als de ordinale waarde van dat karakter.
Opmerking: Onthoud dat deze functie hoofdletter-gevoelig is. Voor niet hoofdletter-gevoelige toepassingsdoeleinden kan je stristr() gebruiken.
(PHP 3, PHP 4 , PHP 5)
strstr -- Vindt eerste voorkomen van een string
Beschrijving
string strstr ( string haystack, string needle)
Geeft alles van haystack van het eerste voorkomen van needle tot het einde.
Als needle niet gevonden wordt, retourneert deze functie FALSE.
Als needle geen string is, wordt deze geconverteerd naar een integer en toegepast als de ordinale waarde van dat karakter.
Opmerking: Onthoud dat deze functie hoofdletter-gevoelig is. Voor niet hoofdletter-gevoelige toepassingsdoeleinden kan je stristr() gebruiken.
@ Willem: ik denk dat SanThe's oplossing beter is, want strpos kan ook 0 retourneren als needle op positie 0 van haystack gevonden wordt.
@Jan;
Kwestie van goed programmeren ;-)
if (strpos ("dinges","dinges") !== FALSE)
{
# gevonden
}
Kwestie van goed programmeren ;-)
if (strpos ("dinges","dinges") !== FALSE)
{
# gevonden
}
if (strpos('dinges', 'dinges') == TRUE) {
# gevonden
}
Dat lijkt me beter...
# gevonden
}
Dat lijkt me beter...
@Jip: Wat als de string nu al op punt 0 zit? Dan geeft strpos 0 terug, en 0 staat zo ongeveer gelijk aan FALSE. Dus dan zou een 3 dubbele = wel degelijk van toepassing zijn.
(Niet uitgestest overigens, puur geredeneerd vanuit de tekst van PHP.net)
(Niet uitgestest overigens, puur geredeneerd vanuit de tekst van PHP.net)




