<?php
/* testSimpleAssignment */
$a = false;
/* testFunctionCall */
$a = doSomething();
/* testFunctionCallArgument */
$a = doSomething($a, $b);
/* testControlStructure */
while(true) {}
$a = 1;
/* testClosureAssignment */
$a = function($b=false){};
/* testHeredocFunctionArg */
myFunction(<<<END
Foo
END
, 'bar');
switch ($a) {
case 1: {break;}
case 2: $foo = true; break;
default: {break;}
/* testSwitch */
}
/* testStatementAsArrayValue */
$a = [new Datetime];
$a = array(new Datetime);
$a = ['a' => $foo + $bar, 'b' => true];
/* testUseGroup */
use Vendor\Package\{ClassA as A, ClassB, ClassC as C};
$a = [
/* testArrowFunctionArrayValue */
'a' => fn() => 1,
'b' => fn() => 1,
];
/* testStaticArrowFunction */
static fn ($a) => $a;
/* 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($a, $b), 2 => two($b, $c)],
3 => [],
};
/* testNestedMatch */
$result = match ($key) {
1 => match ($key) {
1 => 'one',
2 => 'two',
},
2 => match ($key) {
1 => 'two',
2 => 'one',
},
};
return 0;
/* testOpenTag */
?>
<h1>Test</h1>
<?php echo '<h2>', foo(), '</h2>';
/* testOpenTagWithEcho */
?>
<h1>Test</h1>
<?= '<h2>', foo(), '</h2>';
$value = [
/* testPrecededByArrowFunctionInArray - Expected */
Url::make('View Song', fn($song) => $song->url())
/* testPrecededByArrowFunctionInArray */
->onlyOnDetail(),
new Panel('Information', [
Text::make('Title')
]),
];
switch ($foo) {
/* testCaseStatement */
case 1:
/* testInsideCaseStatement */
$var = doSomething();
/* testInsideCaseBreakStatement */
break 1;
case 2:
/* testInsideCaseContinueStatement */
continue 1;
case 3:
/* testInsideCaseReturnStatement */
return false;
case 4:
/* testInsideCaseExitStatement */
exit(1);
case 5:
/* testInsideCaseThrowStatement */
throw new Exception();
/* testDefaultStatement */
default:
/* testInsideDefaultContinueStatement */
continue $var;
}
match ($var) {
true =>
/* test437ClosureDeclaration */
function ($var) {
/* test437EchoNestedWithinClosureWithinMatch */
echo $var, 'text', PHP_EOL;
},
default => false
};
match ($var) {
/* test437NestedLongArrayWithinMatch */
'a' => array( 1, 2.5, $var),
/* test437NestedFunctionCallWithinMatch */
'b' => functionCall( 11, $var, 50.50),
/* test437NestedArrowFunctionWithinMatch */
'c' => fn($p1, /* test437FnSecondParamWithinMatch */ $p2) => $p1 + $p2,
default => false
};
callMe($paramA, match ($var) {
/* test437NestedLongArrayWithinNestedMatch */
'a' => array( 1, 2.5, $var),
/* test437NestedFunctionCallWithinNestedMatch */
'b' => functionCall( 11, $var, 50.50),
/* test437NestedArrowFunctionWithinNestedMatch */
'c' => fn($p1, /* test437FnSecondParamWithinNestedMatch */ $p2) => $p1 + $p2,
default => false
});
match ($var) {
/* test437NestedShortArrayWithinMatch */
'a' => [ 1, 2.5, $var],
default => false
};
|