⊗ppPmCdBOP 93 of 447 menu

PHP-da shartlardagi jingalak qavslarning ixtiyoriyligi muammosi

PHP yuqorida ko'rsatilgan jingalak qavslar bilan qisqartirishlarga ruxsat bersa-da, men umuman bunday qilishni tavsiya qilmayman, chunki bunday holatlar aniqlash qiyin xatolarning manbai hisoblanadi.

Misol uchun quyidagi kod mavjud deb faraz qilaylik:

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

Endi faraz qilaylik, shart bajarilgan taqdirda, yana bir echo qilmoqchi bo'ldik:

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

Biroq, jingalak qavslarsiz, shart ichida faqat birinchi chiqarish joylashgan, ya'ni birinchi chiqarish shart bajarilganda ishlaydi, ikkinchisi esa har doim ishlaydi.

Aslida bizning kodimiz quyidagiga teng:

<?php $test = 3; if ($test > 0) { echo $test; } echo '+++'; // bu qator shartdan tashqarida joylashgan ?>

Asilda biz shunday kodni xohlagan edik:

<?php $test = 3; if ($test > 0) { echo $test; echo '+++'; // bu qator shart ichida } ?>

Aynan shuning uchun har doim jingalak qavslarni qo'yish tavsiya etiladi, shu kabi xatolarga yo'l qo'ymaslik uchun.

Kodni ishlamasdan, ekranga nima chiqishini aniqlang:

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

Kodni ishlamasdan, ekranga nima chiqishini aniqlang:

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

Kodni ishlamasdan, ekranga nima chiqishini aniqlang:

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