fn() => return 1, 'b' => fn() => return 1, ]; /* testStaticArrowFunction */ static fn ($a) => $a; return 0; /* testArrowFunctionReturnValue */ fn(): array => [a($a, $b)]; /* testArrowFunctionAsArgument */ $foo = foo( fn() => bar() ); /* testArrowFunctionWithArrayAsArgument */ $foo = foo( fn() => [$row[0], $row[3]] ); $match = match ($a) { /* testMatchCase */ 1 => 'foo', /* testMatchDefault */ default => 'bar' }; $match = match ($a) { /* testMatchMultipleCase */ 1, 2, => $a * $b, /* testMatchDefaultComma */ default, => 'something' }; match ($pressedKey) { /* testMatchFunctionCall */ Key::RETURN_ => save($value, $user) }; $result = match (true) { /* testMatchFunctionCallArm */ str_contains($text, 'Welcome') || str_contains($text, 'Hello') => 'en', str_contains($text, 'Bienvenue') || str_contains($text, 'Bonjour') => 'fr', default => 'pl' }; /* testMatchClosure */ $result = match ($key) { 1 => function($a, $b) {}, 2 => function($b, $c) {}, }; /* testMatchArray */ $result = match ($key) { 1 => [1,2,3], 2 => [1 => one(), 2 => two()], }; /* testNestedMatch */ $result = match ($key) { 1 => match ($key) { 1 => 'one', 2 => 'two', }, 2 => match ($key) { 1 => 'two', 2 => 'one', }, };