Hier im Forum bekommt ihr bei euren fragen schnelle hilfe.Hier geht es rund um das Web SeitenProgrammieren.Alles rund ums Javascript,Html,Php,Css und Sql.Auf fast allen Fragen haben wir eine Antwort.
Der Soforthilfe-chat verspricht das ,was sein Name sagt. Hier sind Leute Online die sofort ihre hilfe anbieten.Seht in der OnlineListe nach und wenn einer Online ist werdet ihr auch antwort bekommen. Admine ,Moderatoren und Helfer sind unsere Spezialisten in Sachen Web Programierung
71 Unwetterwarnungen in Deutschland
Die Datenbank wurde zuletzt am 02.08.2020 17:34:28 aktualiesiert
71

Needle/Haystack Übersicht

Ich schreibe bald eine Klausur (so richtig auf Papier). Und da sind keine Handbücher oder Funktionsreferenzen erlaubt. Das befinde ich jetzt erstmal für großen Schwachsinn, weil es total an der Realität vorbeigeht. So. Nun habe ich mal eine kleine Übersicht erstellt, wie die Needle/Haystack-Reihenfolge bei den meistgenutzten Funktionen ist. Durch die Hilfe der IDE ist man ja nicht gezwungen, sich das merken zu müssen. Naja, beim stöbern im PHP Handbuch ist mir nun aufgefallen, dass mein Gefühl der total willkürlichen Reihenfolge gar nicht zutreffend war ;-). Wenn man sich mal ein paar PHP-Basher anhört, ist das ja auch das erste Argument. Schauen wir einfach mal:

String-Funktionen

string strstr ( string $haystack , mixed $needle [, bool $before_needle = false ] ) int strpos ( string $haystack , mixed $needle [, int $offset = 0 ] ) int substr_count ( string $haystack , string $needle [, int $offset = 0 [, int $length ]] ) mixed str_replace ( mixed $search , mixed $replace , mixed $subject [, int &$count ] ) 

Die Reihenfolge gilt entsprechend auch für die iconv_ und mb_ – Funktionen.

Array-Funktionen

bool array_key_exists ( mixed $needle , array $haystack ) mixed array_search ( mixed $needle , array $haystack [, bool $strict ] ) bool in_array ( mixed $needle , array $haystack [, bool $strict ] ) 

Was fällt auf? Bei den String-Funktionen befindet sich der $haystack immer an erster Stelle, bei den Array-Funktionen kommt die $needle immer zuerst. Also gar nicht so tragisch. Wenn man sich jetzt noch eine anständige Eselsbrücke bildet, kann man sich das sehr gut behalten.

Was man sich merken muss, ist dann bloß noch ob Unterstrich oder nicht: in_array vs. strpos. Aber das hat man eh drauf. Also alles garnicht so schlimm wie immer propagiert wird.