PHP - 可以从apache访问外部类/库,但不能从phpunit访问

时间:2012-02-11 15:07:10

标签: php zeromq

我在我的网络应用程序中使用ZeroMQ套接字库。我已经配置了php.ini,所以Apache可以使用ZMQ,但我不知道phpunit如何使用它。

不要phpunit使用apache使用的相同php.ini吗?

在phpunit中我收到以下错误。

PHP Fatal error: Class 'ZMQContext' not found in /home/idlecool/checker/testcases/checkerTest.php on line 53

1 个答案:

答案 0 :(得分:3)

Apache和命令行使用哪个php.ini文件通常取决于您的Linux发行版;如果使用Debian或Ubuntu,通常会有:

  • /etc/php5/apache2/php.ini适用于Apache
  • /etc/php5/cli/php.ini用于命令行 - 而PHPUnit作为命令行应用程序运行。


但请注意,通常(默认情况下在Ubuntu上都是如此).ini目录中的所有/etc/php5/conf.d/文件都将以Apache和CLI模式加载。

这意味着,如果您希望在两种模式下加载扩展,则应在该目录中创建.ini文件,并加载和配置它。


例如,您可以拥有/etc/php5/conf.d/zmq.ini文件,其中包含以下内容:

extension=zmq.so

(当然,您必须输入正确的.so文件的名称)