ფიგურული ფრჩხილების არჩევითობის პრობლემა if პირობებში PHP-ში
მიუხედავად იმისა, რომ PHP დაუშვებს ზემოთ ნაჩვენებ შემოკლებებს ფიგურული ფრჩხილებით, მე საერთოდ არ გირჩევთ ამის გაკეთებას, რადგან ეს რთულად აღსაქმელი შეცდომების კერაა.
მაგალითად, იყოს შემდეგი კოდი:
<?php
$test = 3;
if ($test > 0)
echo $test;
?>
დავუშვათ, ახლა გადავწყვიტეთ იმ შემთხვევაში, თუ
პირობა შესრულდება, გავაკეთოთ მეორე
echo:
<?php
$test = 3;
if ($test > 0)
echo $test;
echo '+++';
?>
თუმცა, ფიგურული ფრჩხილების გარეშე პირობის შიგნით არის მხოლოდ პირველი გამოტანა, ანუ პირველი გამოტანა მოქმედებს სწორი პირობის შემთხვევაში, ხოლო მეორე - ყოველთვის.
ფაქტობრივად, ჩვენი კოდი ექვივალენტურია ასეთის:
<?php
$test = 3;
if ($test > 0) {
echo $test;
}
echo '+++'; // ეს სტრიქონი პირობის გარეთ აღმოჩნდა
?>
ჩვენ კი ასეთი კოდი გვსურდა:
<?php
$test = 3;
if ($test > 0) {
echo $test;
echo '+++'; // ეს სტრიქონი პირობის შიგნით
}
?>
სწორედ ამიტომ რეკომენდებულია ყოველთვის შეასრულოთ ფიგურული ფრჩხილების განლაგება, რათა არ მოხვდეთ ამგვარ შეცდომებში.
კოდის გაშვების გარეშე, დაადგინეთ, რა დაიბეჭდება ეკრანზე:
<?php
$num = 5;
if ($num === 5)
echo $num;
echo '+++';
?>
კოდის გაშვების გარეშე, დაადგინეთ, რა დაიბეჭდება ეკრანზე:
<?php
$num = 0;
if ($num === 5)
echo $num;
echo '+++';
?>
კოდის გაშვების გარეშე, დაადგინეთ, რა დაიბეჭდება ეკრანზე:
<?php
$num = 0;
if ($num === 5)
echo $num;
echo '---';
echo '+++';
?>