PHP: Lint/Find 静默字符串到数组的转换
PHP: Lint/Find silent string to array conversions
我必须维护旧代码(主要是在 PHP 5.3 中编写的),我们正在努力将其提升到 PHP 7.2。
到目前为止我们进展顺利,但我在静默字符串到数组转换方面遇到了问题。
我的意思是将变量初始化为空字符串,然后将其用作数组:
$test = "";
$test[] = "foo";
这将适用于旧的 PHP 版本,但因为 7.1 会引发致命异常。
有没有一种方法,比如说 linter,我可以用它扫描这种用法的代码,以获得一个列表,我必须在其中更改变量的初始化?该应用程序很大,因此手动操作会很痛苦...
尝试列出文件和字符串。
grep -nr '"";' .
如果可以,交换
grep -lr '"";' . | xargs perl -p -i -e 's/"";/array();/g'
我必须维护旧代码(主要是在 PHP 5.3 中编写的),我们正在努力将其提升到 PHP 7.2。
到目前为止我们进展顺利,但我在静默字符串到数组转换方面遇到了问题。
我的意思是将变量初始化为空字符串,然后将其用作数组:
$test = "";
$test[] = "foo";
这将适用于旧的 PHP 版本,但因为 7.1 会引发致命异常。
有没有一种方法,比如说 linter,我可以用它扫描这种用法的代码,以获得一个列表,我必须在其中更改变量的初始化?该应用程序很大,因此手动操作会很痛苦...
尝试列出文件和字符串。
grep -nr '"";' .
如果可以,交换
grep -lr '"";' . | xargs perl -p -i -e 's/"";/array();/g'