【问题标题】:check the php version compatibility of a php script检查 php 脚本的 php 版本兼容性
【发布时间】:2013-10-07 09:09:19
【问题描述】:
我有一个 php 脚本。我想检查这个脚本的每个函数所具有的 php 版本兼容性。
例如,该脚本具有 hash() 函数。如果我们查看 php.net 站点,它会说添加了这个函数(PHP 5 >= 5.1.2,PECL hash >= 1.1)。
所以假设这个脚本只有这个功能,我们说它与 php 5.1.2 及更高版本兼容。是否有任何软件工具可以扫描脚本并告诉您每个函数的更改日志,并可能给您最低分数,例如(php 4.3 及更高版本)?手动检查脚本中的每个函数有点乏味。
提前谢谢你
【问题讨论】:
标签:
php
function
version
compatibility
changelog
【解决方案1】:
由于 PHP 支持动态函数/方法名称,因此仅搜索源代码不会得到可靠的结果。
例子:
$function = 'strpos';
$result = $function(...);
您可以将 xdebug 函数跟踪与 100% 的测试覆盖率一起使用。这可以为您提供在测试套件运行期间以 100% 覆盖率调用的所有函数名称——这意味着所有代码都已运行。但即使这样也不可靠,因为您必须确保您的测试套件涵盖了所有可能的动态函数名称,这是不可能的。 (假设函数名的最大长度是无限的)
我的最终答案是:这是不可能的。