Ich verstehe diese Switches und Cases net. Wie man einen macht, okay, das weiß ich, aber wie mach ich es das ich zwei habe, und wie aktiviere/deaktiviere ich Switches?
Switches sind ja eigentlich Variablen oder? Ich weiß das net...HELP!
switch ($id) {
case news:
include ('news.php') ;
break;
default:
echo "ID ist alles nur nett News" ;
}
switch ($ahohhh){
case teletubbies:
include ('teletubbies.php');
break;
defaukt:
echo 'Momentan ist die Startseite angesporchen!';
break;
}
Und dann auf einer andren Seite
<?php
//blabla par befehle usw
$ahoh = true;
$id = false;
//blabla ein paar befehle usw
?>
Hm.. anstatt hier "nur" Beispielcode zu posten, könnte man auch versuchen das anscheinend vorliegende Verständnissproblem zu beseitigen.. =)
@Threadersteller
"Switch" hat in einer Sprache, wie PHP, eine vollkommen andere Bedeutung als im Maker (wo ich mal annehme, du herkommst). Switch ist keine Variable, sondern eine Anweisung, genauer gesagt ein Anweisungskonstrukt, ähnlich wie "If".
Ein Switch-Konstrukt besteht aus dem Switch-Statement, wo eine Variable angegeben wird, deren Inhalt überprüft werden soll. Nach diesem Switch-Statement, kommen die Case-Anweisungen. Hier gibt es einen Anweisungsblock, eingeleitet über einen "Case". Zusätzlich zu einer beliebigen Anzahl an Case-Anweisungen gibt es noch den optionalen default-Case..
Der Programmablauf geht dabei folgerndermasen vor. Der Wert, der angegeben Variable wird gelesen und mit jedem Wert verglichen, für den es einen Case-Block gibt. Wird ein solcher Case-Block gefunden, springt der Programmablauf sofort zu diesem Block.
Wird kein entsprechender Case-Block gefunden, wird zum default-Block gesprungen, falls dieser ebenso fehlt, springt der Programmablauf sofort zum Ende des Switch-Konstruktes. Selbiges passiert auch durch die break-Anweisung.
Diese Switchkonstrukte gibt es in nahezu jeder Programmier/script-Sprache, in manchen heißen sie aber "Select" statt "Switch". Mit dem makertypischen Switch, haben sie gar nichts zu tun. Der Ausdruck "Switch" im Maker bezeichnet das, was im Programmierjargon eine Boolsche Variable ist.
Der Ausdruck "Switch" im Maker bezeichnet das, was im Programmierjargon eine Boolsche Variable ist.
...
Und dazu gebe ich mal ein paar Details.
Eine Bool'sche Variable (in den meisten Sprachen bekannt als Boolean oder Bool) kennt zwei Zustände: Wahr und falsch. Das entspricht den Einsen und Nulles des Binärsystems: Effektiv ist ein Bool ein Bit.
PHP kennt keine Variablentypen. Das heißt, daß es keinen großen Unterschied zwischen Integer- und Boole'schen Variablen gibt. (Integer kennst du schon vom Maker her - das, was der Maker als Variablen bezeichnet sind Integer.) Wenn du also einen Bool verwenden willst, dann weist du einfach irgendeiner Variable einen der Werte true (wahr) oder false (falsch) zu.
In anderen Sprachen muß man vorher explizit angeben, daß die Variable ein Bool ist; danach kann man der Variable auch nur Bool-Werte zuweisen. PHP ist da flexibel.
Tatsächlich kann man in PHP so ziemlich alles als Bool verwenden. Zahlen, Strings, was auch immer - PHP findet schon eine Möglichkeit, die Variable auf wahr oder falsch zu reduzieren. Mit etwas experimentieren solltest du ein Gefühl dafür kriegen, was als wahr und was als falsch gilt.
Ich kann auch einfach switch ($i == "Hallo")
und dann die cases usw
...
Da ist die Schreibweise mit if imo übersichtlicher, mich würde das verwirren. switch ist mehr dazu gedacht, eine Variable auf viele Werte zu prüfen, an der Stelle kann der Wert aber nur 1 oder 0 sein.