კონსტრუქცია match
კონსტრუქცია match გამოჩნდა PHP 8.0-ში და გვთავაზობს უფრო მოკლე და უსაფრთხო გზას განშტოებისთვის switch-თან შედარებით. ის იღებს გამოსახულებას შედარებისთვის და აბრუნებს პირველი დამთხვევის პირობის მნიშვნელობას. switch-ისგან განსხვავებით, match ასრულებს მკაცრ შედარებას (===) და არ საჭიროებს break-ს.
სინტაქსი
$result = match ($value) {
condition1 => result1,
condition2 => result2,
...
default => default_result
};
მაგალითი
რიცხვის მარტივი შედარება:
<?php
$res = match (2) {
1 => 'One',
2 => 'Two',
3 => 'Three',
default => 'Unknown'
};
echo $res;
?>
კოდის შესრულების შედეგი:
'Two'
მაგალითი
შედარება რამდენიმე პირობით:
<?php
$age = 25;
$res = match (true) {
$age < 18 => 'Child',
$age >= 18 && $age < 65 => 'Adult',
$age >= 65 => 'Senior'
};
echo $res;
?>
კოდის შესრულების შედეგი:
'Adult'
მაგალითი
გამოყენება მასივებთან:
<?php
$arr = [1, 2, 3];
$res = match ($arr) {
[1, 2, 3] => 'First sequence',
[4, 5, 6] => 'Second sequence',
default => 'Other sequence'
};
echo $res;
?>
კოდის შესრულების შედეგი:
'First sequence'