Was ist schneller?

MIniMe_

Erfahrenes Mitglied
ich will eine kontroll abfrage über eine variable jagen.
dabei soll geprüft werden ob die variable den inhalt "abc" oder nicht hat.
das kann ich ja so machen:
PHP:
<?php
if ($variable == "abc") {
tu dies, tu das...
} else {
oder tu dies, tu das nicht }

// ich kann es aber ja auch so machen:

switch ($variable) {
default:
tu dies, tu das... nicht
break;

case "abc":
tu dies, tu das...
break;
}
da ich diese abfrage recht häufig in meinem script brauche, wollte ich rauskriegen, was performance-technisch gesehen, besser(schneller) ist. THX!

PS: kennt jemand ein gutes tut zu den verschiedenen varibalen typen in mysql?
 
gute frage....ich würde jetzt mal schätzen if ist schneller....
eigentlich aber auch egal, weil das bei den meisten Projekten keinen Untschied macht....bei ner einfachen fallunterscheidung ist if auf jeden Fall besser....(und schneller?)
 
Also prinzipiell würde ich erstmal was über die verschiedene Schleifen in PHP lesen, dann weiss mach auch wofür sie genau eingensetzt werden sollen :p

IF .. THEN .. ELSE ist wohl mit Abstand die am häufigsten eingesetze Schleife und ist für WENN .. DANN .. SONST da und so sollte sich auch genutzt werden.

switch macht man meistens bei verschiedenen Auswahlen. Zum beispiel für include Dateien oder SQL Strings.

In deinem Fall würde ich IF vorziehen da sich einfacher und übersichtlicher ist. (schneller nicht) <-- Bei so kleinen Scripten (bezieht sich jetzt nur auf die Schleife) gibt es keine performance Unterschiede. Und generell ist das schwer meßbar weil beide ihre Vorteile und Gebiete haben.

TuTo für mysql findest du unter http://www.little-idiot.de/mysql/

Gruß
Fatility
 
-

Also bei mir sind Anweisungen, wie "while", "do...while" und "for" Schleifen.
Der Einsatz von if und switch wird dann benötigt, wenn eine Bedingung abgefragt wird, aber das hat nichts mit einer Schleife zu tun.
Also prinzipiell würde ich erstmal was über die verschiedene Schleifen in PHP lesen, dann weiss mach auch wofür sie genau eingensetzt werden sollen
Ganz deiner Meinung Fatility
:rolleyes:
 
schleifen *ts*

switch und if sind Verzweigungs(bzw. Verschachtelungs)strukturen und keine Schleifen.

Prinzipiell läuft bei beiden das selbe ab. Case/Switch ist für Mehrfachverzweigung gedacht, also wenn eine Variable/Ausdruck viele Werte haben kann. Mit If müsste man bei Mehrfachverzweigung unübersichtlich verschachteln.

Für die Anweisung die Du oben benötigst reicht ein If. Sollte hier auch schneller sein(aber sehr sehr unmerkbar ;)).

mfg
evoc
 

Neue Beiträge

Zurück