PHP's IF en ELSE in één keer

Een code met de ontbrekende voorwaarde in de verklaring als:

if ( ... ) {
    echo 'BBB';
}
else {
    echo 'AAA';
}

Vraag: Wat moet ik in een ontbrekende staat schrijven dat de uitvoer van deze code een regel was: AAABBB

2
Niets. Zoals geschreven, zal precies één van de takken altijd worden genomen.
toegevoegd de auteur Jon, de bron
@ MichaelKrelin-hacker Om eerlijk te zijn, staat C ook deze constructie toe.
toegevoegd de auteur NullUserException, de bron
Ja, maar Raphael heeft niet beloofd C te verlaten :)
toegevoegd de auteur Michael Krelin - hacker, de bron
Gefeliciteerd, Raphael, je hebt een reden om over te schakelen naar een fatsoenlijke taal.
toegevoegd de auteur Michael Krelin - hacker, de bron
Ik zweer dat ik nooit meer één regel PHP code zal schrijven als er een antwoord is op deze vraag ...
toegevoegd de auteur Raphael R., de bron

4 antwoord

Uit mijn hoofd:

if ( print('AAA') ) {
    echo 'BBB';
}
else {
    echo 'AAA';
}

maar idk als dit geldig is PHP. :)

THX voor de hint @ Xeon06

2
toegevoegd
Waarom het downvote?
toegevoegd de auteur Luchian Grigore, de bron
@Michael oke sorry ik heb het verkeerd begrepen. Nogmaals sorry.
toegevoegd de auteur Luchian Grigore, de bron
de && was een typfout, het zou moeten zijn || en dat komt omdat ik niet wist wat de echo is (blijkbaar komt het niet eens terug)
toegevoegd de auteur Luchian Grigore, de bron
Hahaha, goed.
toegevoegd de auteur Alex Turpin, de bron
Zou werken met afdrukken .
toegevoegd de auteur Alex Turpin, de bron
toegevoegd de auteur Alex Turpin, de bron
echo is een taalconstructie. het heeft geen retourwaarde.
toegevoegd de auteur Marc B, de bron
Geen probleem, misschien heb je een slechte dag gehad ;-)
toegevoegd de auteur Michael Krelin - hacker, de bron
Ik zie nu. Dan had je het || true moeten maken, anders zou de uitdrukking na true || niet geëvalueerd worden.
toegevoegd de auteur Michael Krelin - hacker, de bron
Luchian, noch ik ben de php-ontwikkelaar en ik heb je antwoord niet gestolen, je typte het gewoon sneller in, omdat ik naar selecteerde als echo in deze context kan worden gebruikt. En ik vroeg alleen wat je bedoeling was bij het schrijven van het construct, het was niet bedoeld als beledigend.
toegevoegd de auteur Michael Krelin - hacker, de bron
(en nee, downvote is niet van mij :))
toegevoegd de auteur Michael Krelin - hacker, de bron
echo/printf kwestie terzijde, wat was het doel van true && ? Ik zou het begrijpen || true , maar true && ?
toegevoegd de auteur Michael Krelin - hacker, de bron

Men moet waar zijn of niet. Het kan niet zowel waar als onwaar zijn. Dit kan echter worden gedaan met een if-else-verklaring.

0
toegevoegd

Dat kan niet. Een if() -instructie is OF OF. U kunt niet tegelijkertijd zowel de TRUE als de FALSE takken van een if-statement uitvoeren. Als je beide takken wel nodig hebt om uit te voeren, gebruik dan geen if ():

echo 'AAA';
echo 'BBB';
0
toegevoegd
Wie is de domkop die hier de stemmen neerlegt om antwoorden op een niet-vraag te corrigeren?
toegevoegd de auteur Dave Rager, de bron
Als je de regel die begint met "Vraag:" zorgvuldig leest, zou je je realiseren dat je helemaal geen antwoord hebt gegeven.
toegevoegd de auteur Michael Krelin - hacker, de bron
if ( printf("AAA") ) {
    echo 'BBB';
}
else {
    echo 'AAA';
}
0
toegevoegd