Konstrukti match

Konstrukti match u shfaq në PHP 8.0 dhe ofron një mënyrë më të shkurtër dhe më të sigurt për degëzim në krahasim me switch. Ai merr një shprehje për krahasim dhe kthen vlerën e kushtit të parë që përputhet. Ndryshe nga switch, match kryen krahasim të rreptë (===) dhe nuk kërkon break.

Sintaksa

php$result = match ($value) {
  condition1 => result1,
  condition2 => result2,
  ...
  default => default_result
};

Shembull

Përputhje e thjeshtë e numrit:

php<?php
  $res = match (2) {
    1 => 'One',
    2 => 'Two',
    3 => 'Three',
    default => 'Unknown'
  };
  echo $res;
?>

Rezultati i ekzekutimit të kodit:

php'Two'

Shembull

Përputhje me disa kushte:

php<?php
  $age = 25;
  $res = match (true) {
    $age < 18 => 'Fëmijë',
    $age >= 18 && $age < 65 => 'I rritur',
    $age >= 65 => 'Senior'
  };
  echo $res;
?>

Rezultati i ekzekutimit të kodit:

php'I rritur'

Shembull

Përdorimi me vargje:

php<?php
  $arr = [1, 2, 3];
  $res = match ($arr) {
    [1, 2, 3] => 'Sekuenca e parë',
    [4, 5, 6] => 'Sekuenca e dytë',
    default => 'Sekuencë tjetër'
  };
  echo $res;
?>

Rezultati i ekzekutimit të kodit:

php'Sekuenca e parë'

Shihni gjithashtu

  • operatorin switch,
    i cili ofron një mënyrë alternative për degëzim
  • funksionin if,
    i cili ekzekuton deklarata kushtëzuese