In acest articol vom trata un subiect aparent banal printre programatori. Si cand spun banal, nu inseamna ca este mai putin important. Numai ca fiind folosit atat de des, acest element sa trivializeaza si-l luam ca pe un dat.
Este vorba despre banalele expresii conditionale. Am ales sa dedic un articol acestui element dintr-un motiv foarte simplu. Asa cum va spuneam si intr-un articol anterior, ColdFusion abordeaza putin diferit unele lucruri.
Expresiile if/else
sunt un exemplu bun al acestui lucru.
Ca sa intelegem mai bine, sa vedem cateva bucati de cod. In PHP (ca in majoritatea limbajelor de altfel), un bloc if/else
ar arata asa:
<?php if($condition === true) { // executa cod } else { // executa cod } ?>
Dar sa nu ne cramponam de limbaj. Hai sa vedem un bloc de cod generalizat, ca sa-l comparam dupa aceea cu ColdFusion.
if(expresie_de_evaluat) { executa cod } else { executa cod }
Bun, din cele doua blocuri de cod, se vede destul de clar cum arata expresia if/else
. Haideti sa portam acest cod in ColdFusion sa vedem cu ar arata. Studiind blocul de mai sus, am fi tentati sa scriem ceva de genul acesta:
<cfif expresie_de_evaluat> <!--- executa cod ---> </cfif> <cfelse> <!--- executa cod ---> </cfelse>
Deci, ce nu e bine aici? Avem un bloc if
, iar cand acesta se finalizeaza incepe blocul else
. Ei bine, ColdFusion vede blocul if/else
in felul urmator:
<cfif expresie_de_evaluat> <!--- executa cod ---> <cfelse> <!--- executa cod ---> </cfif>
Dupa cum vedeti, <cfif>
este singurul care se inchide. Totul se intampla in interiorul acestui tag, ramanand ca <cfelse>
sa fie inclus tot aici. Obeservati de asemenea, ca <cfelse>
nu se inchide. El tine automat din locul in care este deschis, pana acolo unde se termina <cfif>
.
Si pentru cei dintre voi care sunteti fani ai lui elseif
, tin sa va spun ca si ColdFusion ofera asa ceva. Se numeste <cfelseif>
si se foloseste asa:
<cfif expresie_de_evaluat> <!--- executa cod ---> <cfelseif expresie2_de_evaluat> <!--- executa cod ---> <cfelse> <!--- executa cod ---> </cfif>
Dupa cum vedeti, conditiile nu sunt nici pe departe mai grele in ColdFusion. Sunt doar putin diferite fata de cele cu care ne-am obisnuit. Happy Coding.