Is het mogelijk om voor meer if statements 1 else statement te doen?
Dus dat het else statement alleen word uitgevoerd als alle if statements geen resultaat leveren.
En hoe moet ik dit dan doen als het mogelijk is?
Ja? Kan dat zo? Ik had op een andere site gelezen dat dan conditie1 perse hoog moet zijn wil conditie 2 werken.
Want bijv. als conditie 1 en 2 hebben geen resultaat en conditie3 heeft een resultaat dat conditie3 wel word uit gevoerd.
Dus dat else alleen resultaat geeft als alle condities geen resultaat geven.
Probeer het maar eens naar begrijpelijke taal te vertalen:
als conditie 1 waar is {
statement 1
} anders als conditie 2 waar is {
statement 2
} anders {
statement 3
}
Als conditie 1 niet waar is wordt er gekeken of conditie 2 waar is. Is die ook niet waar, dan kom je bij het else-blok, en wordt statement 3 uitgevoerd.
Is conditie 1 waar, dan blijft het bij statement 1.
Is conditie 1 niet waar, maar conditie 2 wel, dan zal alleen statement 2 uitgevoerd worden.
switch ($int)
{
case 1:
print "integer is gelijk aan 1";
break;
case 2:
print "integer is gelijk aan 2";
break;
case ($int >= 10):
print "integer is groter dan of gelijk aan 10";
break;
default:
print "integer is niet gelijk aan 1 of 2 en kleiner dan 10";
}
zo snel als je een tweede elseif erin gooit vind ik een switch al gerechtvaardigd. waarom het zou schelen of je veel of weinig code in de cases gooit weet ik niet.
Bovendien ben je in een switch gebonden aan de waarde van 1 enkele variabele. In een if/elseif/else constructie kun je veel uitgebreidere voorwaarden opnemen...
overzichtelijk is veel waard idd. ik ben zelf zo ver dat ik redelijk goed weet wanneer wat te gebruiken maar de topicstarter was niet eens van de keuze op de hoogte. vandaar mijn post.
oké het elseif gaat niet werken omdat ik niet bijv. de resultaten van conditie1 en 2 kan laten zien als deze resultaat hebben maar enkel vaan 1 van beide...
Ik ga eens kijken wat ik kan met het switch statement..
EDIT,,
switch schiet ook niet op omdat het gewoon weg hetzelfde resultaat op levert..