Muundo match
Muundo match ulionekana katika PHP 8.0 na hutoa njia fupi na salama zaidi ya matawi ikilinganishwa na switch. Hukubali usemi wa kulinganisha na hurudisha thamani ya sharti la kwanza linalofanana. Tofauti na switch, match hufanya ulinganisho mkali (===) na haihitaji break.
Syntax
$result = match ($value) {
condition1 => result1,
condition2 => result2,
...
default => default_result
};
Mfano
Ulinganisho rahisi wa nambari:
<?php
$res = match (2) {
1 => 'Moja',
2 => 'Mbili',
3 => 'Tatu',
default => 'Haijulikani'
};
echo $res;
?>
Matokeo ya utekelezaji wa kodi:
'Mbili'
Mfano
Ulinganisho na masharti mengi:
<?php
$age = 25;
$res = match (true) {
$age < 18 => 'Mtoto',
$age >= 18 && $age < 65 => 'Mtu Mzima',
$age >= 65 => 'Mzee'
};
echo $res;
?>
Matokeo ya utekelezaji wa kodi:
'Mtu Mzima'
Mfano
Matumizi na arrays:
<?php
$arr = [1, 2, 3];
$res = match ($arr) {
[1, 2, 3] => 'Mfuatano wa kwanza',
[4, 5, 6] => 'Mfuatano wa pili',
default => 'Mfuatano mwingine'
};
echo $res;
?>
Matokeo ya utekelezaji wa kodi:
'Mfuatano wa kwanza'