From 03f50c37196b6bb4dc04eb22610d37a802055f56 Mon Sep 17 00:00:00 2001 From: Abdul Malik Ikhsan Date: Mon, 15 Sep 2025 05:41:28 +0700 Subject: [PATCH 1/2] [CodeQuality] Skip append from params on InlineArrayReturnAssignRector --- .../Fixture/skip_append_from_params.php.inc | 14 ++++++++++++++ 1 file changed, 14 insertions(+) create mode 100644 rules-tests/CodeQuality/Rector/ClassMethod/InlineArrayReturnAssignRector/Fixture/skip_append_from_params.php.inc diff --git a/rules-tests/CodeQuality/Rector/ClassMethod/InlineArrayReturnAssignRector/Fixture/skip_append_from_params.php.inc b/rules-tests/CodeQuality/Rector/ClassMethod/InlineArrayReturnAssignRector/Fixture/skip_append_from_params.php.inc new file mode 100644 index 00000000000..7a1a80b15d8 --- /dev/null +++ b/rules-tests/CodeQuality/Rector/ClassMethod/InlineArrayReturnAssignRector/Fixture/skip_append_from_params.php.inc @@ -0,0 +1,14 @@ + Date: Mon, 15 Sep 2025 05:43:46 +0700 Subject: [PATCH 2/2] Fix --- .../Rector/ClassMethod/InlineArrayReturnAssignRector.php | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/rules/CodeQuality/Rector/ClassMethod/InlineArrayReturnAssignRector.php b/rules/CodeQuality/Rector/ClassMethod/InlineArrayReturnAssignRector.php index a0554c6cb3f..3e1027ad356 100644 --- a/rules/CodeQuality/Rector/ClassMethod/InlineArrayReturnAssignRector.php +++ b/rules/CodeQuality/Rector/ClassMethod/InlineArrayReturnAssignRector.php @@ -10,6 +10,7 @@ use PhpParser\Node\Expr\Assign; use PhpParser\Node\Expr\New_; use PhpParser\Node\Expr\Variable; +use PhpParser\Node\FunctionLike; use PhpParser\Node\Stmt; use PhpParser\Node\Stmt\Expression; use PhpParser\Node\Stmt\Return_; @@ -92,6 +93,14 @@ public function refactor(Node $node): ?Node return null; } + if ($node instanceof FunctionLike) { + foreach ($node->getParams() as $param) { + if ($this->isName($param->var, $returnedVariableName)) { + return null; + } + } + } + $emptyArrayAssign = $this->resolveDefaultEmptyArrayAssign($stmts, $returnedVariableName); if (! $this->areAssignExclusiveToDimFetchVariable($stmts, $emptyArrayAssign, $returnedVariableName)) { return null;