我有一个长期在PhpStorm中开发的项目,并且与php 5.6完全兼容。无论如何,它都能正常工作并部署在使用php 5.6的服务器上。
如何使用PhpStorm 2018检查此整个项目与php 7.2的兼容性,并仅突出显示那些仅与7.2不兼容的php代码的地方?
答案 0 :(得分:3)
您在这里有两个选项,它们彼此依赖。
要检查项目的7.2兼容性,我建议使用PHP CodeSniffer。这是一个功能强大的命令行程序,可以根据预定义的编码标准静态检查您的代码。
通过Composer在项目的根目录下安装它:
$ composer require --dev squizlabs/php_codesniffer
您也可以将其全局安装或作为Phar安装。请咨询documentation,以了解其他安装方法。
安装后,您可以通过以下方式调用它:
$ vendor/bin/phpcs --version
//这会向您输出版本
如上所述,PHPCS附带了随时可用的编码标准。使用
$ vendor/bin/phpcs -i
列出它们。
要检查您的代码是否与PSR-2兼容,请运行:
$ vendor/bin/phpcs --standard=PSR2 .
要检查项目与PHP 7.2的兼容性,您必须安装以下标准:https://github.com/PHPCompatibility/PHPCompatibility
$ composer require --dev phpcompatibility/php-compatibility
现在在PHPCS中注册标准。打开您的composer.json
并将此行添加到scripts
部分:
"scripts": {
"post-install-cmd": "\"vendor/bin/phpcs\" --config-set installed_paths vendor/phpcompatibility/php-compatibility",
"post-update-cmd" : "\"vendor/bin/phpcs\" --config-set installed_paths vendor/phpcompatibility/php-compatibility"
}
如果您安装/更新了依赖项,这将很重要。要立即注册标准,您必须手动调用脚本:
$ composer run-script post-install-cmd
要检查新标准是否已成功安装,请运行:
$ vendor/bin/phpcs -i
现在您可以从cli中运行检查了:
$ vendor/bin/phpcs -p . --standard=PHPCompatibility
您已经在PhpStorm中配置了PHP解释器,请打开“首选项”并转到“ PHP | PHP”。优质工具| CodeSniffer。单击...
,然后输入PHP_CodeSniffer安装的路径。在我们的情况下,vendor/bin/phpcs
,然后点击验证。它显示了当前版本的工具提示。
现在单击确定。
在首选项内转到编辑器|检验| PHP |优质的工具。启用PHP Code Sniffer validation
复选框。然后在右侧找到设置页面。您必须从选择字段中选择PHPCompatibility
标准,然后点击选择旁边的重新加载按钮。完成后,单击OK
。
您现在应该查看带下划线的编辑器中的错误。严重性和颜色可以在我们刚刚关闭的配置窗格中设置。
现在,您有两种方法来检查项目代码。通过 CLI -way,您可以更好地总体了解代码的状态,在编写代码时, IDE -way可以为您提供帮助,从而可以避免使用旧的语言构造。
答案 1 :(得分:0)
享受:)