致命错误:类';ZipArchive';-使用PHPUnit时未找到

致命错误:类';ZipArchive';-使用PHPUnit时未找到,php,phpunit,ziparchive,Php,Phpunit,Ziparchive,我重构了一些PHP代码,并将其放入一系列PHPUnit类中 我在运行PHPUnit(3.7.28)时(通过控制台)出现了上述致命错误 PHP版本为5.4.6-1ubuntu1.4(cli) 我知道Zip类在正常运行代码时(也通过控制台)正常工作并可用 感谢您的想法/想法 谢谢 <?php namespace phpUnit\Test; Class MyTest extends \PHPUnit_Framework_TestCase { Public Function setUp()

我重构了一些PHP代码,并将其放入一系列PHPUnit类中

我在运行PHPUnit(3.7.28)时(通过控制台)出现了上述致命错误

PHP版本为5.4.6-1ubuntu1.4(cli)

我知道Zip类在正常运行代码时(也通过控制台)正常工作并可用

感谢您的想法/想法

谢谢

<?php

namespace phpUnit\Test;

Class MyTest extends \PHPUnit_Framework_TestCase
{
Public Function setUp()
    {
    $this->zip = new ZipArchive();
    }
}

在名称空间中,必须使用类的完全限定类名引用类(函数除外),或者首先导入它们:

$this->zip = new \ZipArchive();


如果您的“普通”代码在那里工作,它可能不使用名称空间。

这需要启用。也许PHPUnit使用的是不同版本的PHP?是的,谢谢,我找到了PHP.ini文件,并检查了其中不包含-zip.so。我已经要求服务器管理员纠正这个问题,我们会看到的。此外,上面的代码永远不会工作。您必须编写
$this->zip=new\ZipArchive()
,除非该类是在命名空间
phpUnit\Test
中定义的。通过以上与l-x的讨论,我们确定ZipArchive()没有使用\符号完全限定,
namespace phpUnit\Test;
use ZipArchive;