28 Abfragen so schnell wie möglich vergleichen
Phil Z.
- php
Hey!
Also ich habe
28 verschiedene Variablen(bars) in Form eines Arrays + 1 Variable(foo) mit der immer verglichen werden sollen.
Falls Variable foo mit keiner der 28 bars gleich ist soll foo den Wert 'XX' kriegen.
Wie realisiere ich das am besten ohne 28 If-Else Schleifen?
Mit freundlichen Grüßen
Philipp Zentner
Hi,
Also ich habe
28 verschiedene Variablen(bars) in Form eines Arrays + 1 Variable(foo) mit der immer verglichen werden sollen.
Falls Variable foo mit keiner der 28 bars gleich ist soll foo den Wert 'XX' kriegen.Wie realisiere ich das am besten ohne 28 If-Else Schleifen?
Am besten wirfst du [vor solchen Fragen] mal einen Blick ins Manual, Kapitel Array-Funktionen.
Btw.: If-Else stellen keine Schleife dar.
MfG ChrisB
Wie realisiere ich das am besten ohne 28 If-Else Schleifen?
Am besten wirfst du [vor solchen Fragen] mal einen Blick ins Manual, Kapitel Array-Funktionen.
Genau, dein Freund nennt sich dann in_array()
http://www.php.net/manual/en/function.in-array.php
frohes Fest ;)
Jonny 5
n'abend,
Also ich habe 28 verschiedene Variablen(bars) in Form eines Arrays + 1 Variable(foo) mit der immer verglichen werden sollen.
Falls Variable foo mit keiner der 28 bars gleich ist soll foo den Wert 'XX' kriegen.
Wie realisiere ich das am besten ohne 28 If-Else Schleifen?
Bei nur 28 Elementen ist eine lineare Suche (auf unsortierten Werten) vermutlich noch die sinnvollste lösung. Das kannst du entweder mit einer Schleife selbst erledigen, oder mit in_array(), wie dir die Kollegen bereits erklärt haben.
Wenn du mehr Elemente hast, liefert eine lineare Suche vielleicht nicht mehr das beste Ergebnis. Bei vielen Elementen bietet sich BinarySearch an.
weiterhin schönen abend...
echo $begrüßung;
Wenn du mehr Elemente hast, liefert eine lineare Suche vielleicht nicht mehr das beste Ergebnis. Bei vielen Elementen bietet sich BinarySearch an.
Allerdings kommt es nun auf einen Vergleich an, ob sich ein in PHP gegossener Binärsuch-Algorithmus (inklusive Overhead für einen Funktionsaufruf) dem in C ausgeführten in_array() das Wasser reichen kann, bzw. ab welcher Datenmenge.
echo "$verabschiedung $name";
Hi,
Wenn du mehr Elemente hast, liefert eine lineare Suche vielleicht nicht mehr das beste Ergebnis. Bei vielen Elementen bietet sich BinarySearch an.
Vorausgesetzt, daß die Werte geeignet sortiert sind.
cu,
Andreas
n'abend,
Wenn du mehr Elemente hast, liefert eine lineare Suche vielleicht nicht mehr das beste Ergebnis. Bei vielen Elementen bietet sich BinarySearch an.
Vorausgesetzt, daß die Werte geeignet sortiert sind.
was im verlinkten Wikipedia Artikel gleich im ersten Satz erklärt wird, weshalb ich eine weitere Erwähnung in diesem kurzen Hinweis nicht für nötig hielt.
weiterhin schönen abend...
Hey.
Super, das mit dem in_array() war genau das richtige ;)
Liebe Grüße,
fröhliche Feiertage und einen guten Rutsch ins neue Jahr.
Phil Z.