Tach!
In diesem Fall ist es aber nicht notwendig die mb-Variante zu verwenden.
In der Tat:
$haystack = '🎷🎸🎹🎺🎻'; $needle = '🎸🎹'; var_dump(strpos($haystack, $needle)); // int(4) var_dump(mb_strpos($haystack, $needle)); // int(1)
Das ist ein Versuchsaufbau der nicht zur Aufgabenstellung "beginnt mit" passt. Der folgende Code entspräche dem.
$haystack = '🎸🎹🎺🎻';
$needle = '🎸🎹';
var_dump(strpos($haystack, $needle)); // int(0)
var_dump(mb_strpos($haystack, $needle)); // int(0)
Apropos Ergebnis, hier muss man in jedem Fall (mb_strpos oder strpos) darauf achten, dass die Positionsangabe 0 mit dem false für "gar nicht enthalten" verwechselt werden kann, wenn man einen einfachen Vergleich mit
==
oder!=
verwendet. Hier muss typsicher mit===
oder!==
vergleichen werden.Deshalb steht das ja auch fett eingerahmt in der Doku.
Nicht bei mb_strpos(). Da ist es aber genauso nötig.
dedlfix.