因此,我正在运行安装了php5.6.3的XAMPP。但是,我正在使用php5.2为运行在服务器上的网站编写一些东西。
是否有类似于PHPUnit或PHPCodesniffer (或在线工具)的东西可以告诉我,我的代码中是否有一部分不适用于特定版本的php (例如php < 5.3.2)?
谢谢
发布于 2015-02-24 14:39:58
CodeSniffer将完成以下工作:
在CodeSniffer/downloads下载最新版本-确保将PHP53Compat_CodeSniffer目录重命名为PHP53Compatibility,如果您有git,请使用:
git clone git://github.com/wimg/PHP53Compat_CodeSniffer.git PHP53Compatibility
Copy the PHP53Compatibility directory to {your pear path}/PHP/CodeSniffer/Standards如何运行
像这样启动PHP_CodeSniffer:
phpcs --standard=PHP53Compatibility <path-to-your-PHP-source-directory>样本输出
FILE: C:\temp\bla.php
--------------------------------------------------------------------------------
FOUND 15 ERROR(S) AND 2 WARNING(S) AFFECTING 12 LINE(S)
--------------------------------------------------------------------------------
4 | ERROR | Function name, class name, namespace name or constant name can
| | not be reserved keyword 'goto' (since version 5.3)
6 | ERROR | Extension 'dbase' is not available in PHP 5.3 anymore
12 | ERROR | Function name, class name, namespace name or constant name can
| | not be reserved keyword 'const' (since version all)
12 | ERROR | Function name, class name, namespace name or constant name can
| | not be reserved keyword 'const' (since version all)等等。
SRC:http://techblog.wimgodden.be/2010/06/24/automated-php-5-3-compatibility-testing-for-your-old-code/
发布于 2015-02-24 15:48:09
好的。因此,在研究了上述所有建议之后,我决定了由Wim编写的PHPCompatibility。https://github.com/wimg/PHPCompatibility
我选择这一点而不是PHP53Compat_CodeSniffer的两个原因是:
您还可以通过指定5.2这样的版本来测试代码的向后兼容性,这将导致它检查您是否使用的是这个旧版本所不知道的函数或关键字。如果您正在PHP5.5上编写代码,那么非常好,但是您的系统工程师告诉您,在项目进行一半的过程中,项目必须部署在5.2上。
那正是我的案子。还有..。
https://stackoverflow.com/questions/28698195
复制相似问题