⊗ppPmCdBOP 93 of 447 menu

El problema de la opcionalidad de las llaves en las condiciones en PHP

A pesar de que PHP permite las abreviaturas mostradas arriba sin llaves, en general no recomiendo hacerlo, ya que esto es un foco de errores difíciles de detectar.

Supongamos por ejemplo que existe el siguiente código:

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

Supongamos ahora que decidimos en el caso de que se cumpla la condición, hacer también un segundo echo:

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

Sin embargo, sin llaves dentro de la condición solo se encuentra la primera impresión, es decir, la primera impresión se ejecutará si la condición es verdadera, y la segunda, siempre.

En realidad, nuestro código es equivalente a este:

<?php $test = 3; if ($test > 0) { echo $test; } echo '+++'; // esta línea quedó fuera de la condición ?>

Y nosotros querríamos este código:

<?php $test = 3; if ($test > 0) { echo $test; echo '+++'; // esta línea está dentro de la condición } ?>

Precisamente por esto se recomienda siempre colocar las llaves, para no caer en este tipo de errores.

Sin ejecutar el código, determine qué se imprimirá en pantalla:

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

Sin ejecutar el código, determine qué se imprimirá en pantalla:

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

Sin ejecutar el código, determine qué se imprimirá en pantalla:

<?php $num = 0; if ($num === 5) echo $num; echo '---'; echo '+++'; ?>
Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar