Gebruiken jullie wel eens een verkort if-statement (en zo ja, wanneer)?

<?php
$foo = true ? 'foo' : 'nofoo';
?>
In plaats van:

<?php
if (true) {
$foo = 'foo';
} else {
$foo = 'nofoo';
}
?>
Klopt, en met hoeveel data je daarbij kopieert: meetbaar veel of verwaarloosbaar weinig.

De terechte conclusie is, zoals vaker bij metingen: “It depends.”
Maar... gaat het dan enkel om bestaande variabelen?
Dus wordt er hier wel gekopieerd:

<?php
$foo = true ? $foo : 'unknown';
?>
En hier niet?

<?php
$foo = true ? 'pietje' : 'unknown';
?>
De kopie gaat over wat je voor de ? plaatst, niet erna
>> De kopie gaat over wat je voor de ? plaatst, niet erna

Die volg ik even niet.

Als wat ervoor staat al bestaat, dan duurt het langer dan bij een normale if/else statement? Of bedoel je iets anders?

Reageren