vscode自动格式化引起的惨案
其实我觉得这不是我的锅是 PHP 的锅。
其实我完全不想写关于 PHP 的文章。
Reproduce
- 复制下面这段代码进 vscode。
<?php
$result = array_values(array_intersect($array1, $array2));
$result = $result[0];
?>
-
Shift + Option + F
-
代码变成了
<?php
$result = array_values(array_intersect($array1, $array2))[0];
?>
好像没什么毛病?
根据文档 array dereferencing 只有 PHP 5.4+才能使用。
为什么 PHP?
不说了都是泪。
为什么 PHP 5.3?
不说了都是泪。
Sum up
- 真爱生命远离 PHP
- 团队合作时 format 工具和 IDE 设置尽可能保持一致。
- 设置
formatter/linter工具时要注意对应语言版本。 - 弱类型语言真可怕