Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHPUnit 3.6 PHP5.2.7 PHP解析错误:语法错误,意外的T#U函数,应为';)';第16行的in/usr/local/bin/phpunit_Php_Linux_Phpunit_Centos5 - Fatal编程技术网

PHPUnit 3.6 PHP5.2.7 PHP解析错误:语法错误,意外的T#U函数,应为';)';第16行的in/usr/local/bin/phpunit

PHPUnit 3.6 PHP5.2.7 PHP解析错误:语法错误,意外的T#U函数,应为';)';第16行的in/usr/local/bin/phpunit,php,linux,phpunit,centos5,Php,Linux,Phpunit,Centos5,在我们的开发服务器中,安装了PHP5.2。我被要求在上面安装phpunit。我按照phpunit网站上的说明做了如下操作: 注 PHPUnit3.6需要PHP5.2.7(或更高版本),但PHP5.3.9(或更高版本)不需要 强烈推荐。PHP_CodeCoverage,用于 PHPUnit收集和处理代码覆盖率信息,取决于 Xdebug 2.0.5(或更高版本),但Xdebug 2.1.3(或更高版本)的 推荐的 以下两个命令(您可能必须以root用户身份运行)都是 这是使用PEAR安装程序安装P

在我们的开发服务器中,安装了PHP5.2。我被要求在上面安装phpunit。我按照phpunit网站上的说明做了如下操作:

PHPUnit3.6需要PHP5.2.7(或更高版本),但PHP5.3.9(或更高版本)不需要 强烈推荐。PHP_CodeCoverage,用于 PHPUnit收集和处理代码覆盖率信息,取决于 Xdebug 2.0.5(或更高版本),但Xdebug 2.1.3(或更高版本)的 推荐的

以下两个命令(您可能必须以root用户身份运行)都是 这是使用PEAR安装程序安装PHPUnit所必需的:

pear配置集自动查找1

pear安装pear.phpunit.de/phpunit

但安装后运行phpunit命令时出错:

[root@dev ~]# phpunit



PHP Parse error:  syntax error, unexpected T_FUNCTION, expecting ')' in /usr/local/bin/phpunit on line 16
我也在新鲜的Centos 5安装上测试过它,但都没用。我受够了菲普尼特。请建议怎么做

我已手动卸载并安装如下:

首先,您需要卸载phpunit3.6及其所有依赖项

sudo pear uninstall phpunit/PHPUnit
sudo pear uninstall phpunit/DbUnit
sudo pear uninstall phpunit/PHP_CodeCoverage
sudo pear uninstall phpunit/File_Iterator
sudo pear uninstall phpunit/Text_Template
sudo pear uninstall phpunit/PHP_Timer
sudo pear uninstall phpunit/PHPUnit_MockObject
sudo pear uninstall phpunit/PHPUnit_Selenium
sudo pear uninstall pear.symfony-project.com/YAML
接下来按此顺序安装每个依赖项的这些特定版本,最后安装PHPUnit-3.5.15

sudo pear install pear.symfony-project.com/YAML-1.0.2
sudo pear install phpunit/PHPUnit_Selenium-1.0.1
sudo pear install phpunit/PHPUnit_MockObject-1.0.3
sudo pear install phpunit/PHP_Timer-1.0.0
sudo pear install phpunit/File_Iterator-1.2.3
sudo pear install phpunit/PHP_CodeCoverage-1.0.2
sudo pear install phpunit/Text_Template-1.0.0
sudo pear install phpunit/DbUnit-1.0.0
sudo pear install phpunit/PHPUnit-3.5.15
从网站:

错误与

PHP Parse error:  syntax error, unexpected T_FUNCTION, expecting ')' in /usr/local/bin/phpunit on line 16

请提出解决此问题的任何想法。

我已将其修复,并很高兴与大家分享答案

问题原因:

问题是我正在遵循PHP5.2不支持的某些过程。该文件的链接如下:

我使用pear卸载PHPUnit,但PHPUnit没有正确卸载,二进制文件留在了系统中

解决方案:

对于PHP5.2,我们需要从以下位置安装phpunit 3.6:

即使在执行phpunit命令时,也会显示下面提到的结果

[root@localhost]#菲普尼特 -bash:/usr/local/bin/phpunit:没有这样的文件或目录

我们需要删除留在/usr/local/bin/phpunit的二进制文件,因为pear将二进制文件安装在: /usr/bin/phpunit

解决方案是通过:/usr/bin/phpunit运行phpunit,或者将二进制文件复制到/usr/local/bin/phpunit


cp/usr/bin/phpunit/usr/local/bin/

面对这样一个事实:您应该将PHP至少升级到5.3版,最好升级到最近的5.5版。您将免费获得性能改进,将能够运行package manager Composer(越来越多的软件使用它),并避免明年无法安装PHPUnit,因为PEAR支持将被删除。@Sven我们所有的office项目都在使用PHP5.2,因此无法快速升级。目前,我必须找到一个解决当前情况的方法。PHP5.3是非常向后兼容的,几乎不需要调整任何东西(但是有一些工具可以找到它,比如这里:)。很可能您已经兼容了,只需要切换PHP即可。如果你不尽快开始升级,痛苦会越来越大。