⊗ppPmCdBOP 93 of 447 menu

Het probleem van de optionele accolades in voorwaarden in PHP

Ondanks het feit dat PHP de hierboven getoonde verkortingen met accolades toestaat, raad ik dit over het algemeen niet aan, omdat het een broedplaats is voor moeilijk te vinden fouten.

Stel dat we de volgende code hebben:

<?php $test = 3; if ($test > 0) echo $test; ?>

Stel dat we nu besloten hebben, als aan de voorwaarde is voldaan, ook een tweede echo uit te voeren:

<?php $test = 3; if ($test > 0) echo $test; echo '+++'; ?>

Echter, zonder accolades bevindt alleen de eerste uitvoer zich binnen de voorwaarde, dat wil zeggen dat de eerste uitvoer wordt uitgevoerd als de voorwaarde waar is, en de tweede - altijd.

Feitelijk is onze code equivalent aan deze:

<?php $test = 3; if ($test > 0) { echo $test; } echo '+++'; // deze regel bleek buiten de voorwaarde te staan ?>

Terwijl we deze code wilden:

<?php $test = 3; if ($test > 0) { echo $test; echo '+++'; // deze regel staat binnen de voorwaarde } ?>

Daarom is het aanbevolen om altijd accolades te plaatsen, om niet in dit soort fouten te trappen.

Zonder de code uit te voeren, bepaal wat er op het scherm wordt weergegeven:

<?php $num = 5; if ($num === 5) echo $num; echo '+++'; ?>

Zonder de code uit te voeren, bepaal wat er op het scherm wordt weergegeven:

<?php $num = 0; if ($num === 5) echo $num; echo '+++'; ?>

Zonder de code uit te voeren, bepaal wat er op het scherm wordt weergegeven:

<?php $num = 0; if ($num === 5) echo $num; echo '---'; echo '+++'; ?>
Nederlands
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Wij gebruiken cookies voor de werking van de site, analyse en personalisatie. De verwerking van gegevens gebeurt volgens het Privacybeleid.
alles accepteren aanpassen weigeren