Problem: Ich habe einen String, welchen ich auseinandernehmen will. Der String beinhaltet ein Sonderzeichen als Trenner. Ich möchte alle Zeichen, welche VOR diesem Trenner stehen als Teilstring bekommen. Die Funktion strstr() bzw. stristr() (Groß- und Kleinschreibung ist mir egal) liefert mir jedoch nur den Teilstring NACH dem gefundenen Sonderzeichen. Sie verfügt jedoch über den Zusatzparameter "before_needle". Wenn ich den auf TRUE setze, sollte die Funktion den Teilstring vor dem gefundenen Sonderzeichen (Suchstring "needle") zurückgeben, stattdessen passierte mir folgendes:
Gerade beim Auseinandernehmen von Strings und dem Versuch, den Teilstring eines Strings vor dem gefundenen Suchstring zu bekommen mittels der PHP-Funktion strstr() oder stristr(), kam folgender Fehler zustande: "Wrong parameter count for stristr()". Leider gibts die Funktion erst ab PHP Version 5.3, die ist aber noch nicht veröffentlicht. Wer einen Teilstring haben möchte, der VOR dem gefundenen Parameter steht, kann stattdessen mb_stristr() benutzen. Das funktioniert, wobei ich nicht weiß, ob diese Funktion, da Multibyte-String-Funktion, speicherintensiver ist. Da ich nur einen ganz kleinen String auseinandernehmen musste, stört mich dies jedoch nicht ;-). Vielleicht hilfts ja noch jemandem weiter!
Ach ja: Frohes neues Jahr allen Lesern und denen, die auf diesen Artikel stoßen! 🙂