Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Brackets vanish in Recursive IIFE

未关闭
#2,277 0 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

还没有人认领这个 Issue。

评估

难度
3/5
预计耗时
1-2 天
新手友好度
45/100
Issue 类型
缺陷
描述清晰度
基本清楚
活跃度
停滞
技术栈
php
领域
tooling

调研方向

使用链接的 Playground 示例复现该问题,并将输入与格式化后的输出进行比较。调查 plugin 针对递归立即调用函数的格式化路径;当括号得到保留且格式化后的 PHP 仍然有效并可执行时,即视为完成。

由索引模型根据 Issue 内容生成。

描述

@prettier/plugin-php v0.21.0
Playground link

I took the code sample from https://stackoverflow.com/a/63649677/577052

Input:
This works in PHP 8.2

<?php
$arr = array();
($recursive = function (&$argument)
{
    global $recursive;

    if (count($argument) < 10)
    {
        $argument[] = 'foo';
        $recursive($argument);
    }
})($arr);
print_r($arr);



Output:
The pair of brackets is gone. Code does not work

<?php
$arr = [];
$recursive = function (&$argument) {
	global $recursive;

	if (count($argument) < 10) {
		$argument[] = 'foo';
		$recursive($argument);
	}
}($arr);
print_r($arr);

主要语言
PHP
星标
1.9k
派生
139
PR 合并指标
30 天内没有已合并 PR

贡献指南

打开贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

prettier/plugin-php 的其他 Issue

查看 prettier/plugin-php 的全部 Issue

相似的 Issue

更多 PHP Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。