Hallo,
Ein Formular übergibt folgenden String:
"Pedal, 32 Tasten (C bis g'), Vollpedal, vertikal geschweift"
Dann wird mittels strpos() auf Vorkommen von "vertikal geschweift" getestet...
...obwohl der Teilstring vorhanden ist, bekomme ich immer bool(false)! Wieso? Kommt strpos() mit Whitespace im Teilstring nicht klar?
mit Whitespace hat strpos() ganz sicher keine Probleme. Die Funktion vergleicht Zeichen für Zeichen, oder genauer, Byte für Byte, ohne sich um deren Bedeutung zu kümmern.
Aber untersuche den übergebenen String bitte mal genau. Sind im gesuchten Anschnitt wirklich alle Zeichen gleich? Ein Leerzeichen oder zwei Leerzeichen, Leerzeichen oder Tab? Gerade bei Whitespace gibt es ja einige Unterschiede, die man mit bloßem Auge nicht sieht.
Lass dir also den String beispielsweise mal mit echo bin2hex($string); ausgeben. Die Funktion ist zwar nicht unbedingt dafür gedacht, eignet sich aber gut dafür, alle Zeichencodes im String genau zu analysieren.
So long,
Martin