Nette Tester:MySQLi无法运行

时间:2015-06-27 08:18:50

标签: php mysqli nette nette-tester

通常情况下,在apache中通过mod php它可以正常工作,但如果我尝试使用function_exists('mysqli_init'),则函数不存在。

显示的其他错误:

调用未定义的函数mysqli_connect() 在< file>

中找不到“MySQLi”类

为什么MySQLi无法正常工作以及如何解决?谢谢!

用于运行测试的命令:

vendor/bin/tester -c /etc/php5/apache2 -p php

2 个答案:

答案 0 :(得分:1)

尝试运行./vendor/bin/tester -c /etc/php5/apache2 -p php --info以查看加载了哪些php.ini文件和PHP扩展。

您很可能会发现未加载MySQLi扩展名,因为/etc/php5/apache2/php.ini不包含必要的选项。

正确的解决方案是为您的项目创建具有必要扩展名的特定php.ini

另见official documentation

  

Tester使用-n选项运行PHP进程,因此不加载php.ini(甚至不是来自UNIX中的/etc/php/conf.d/*.ini

答案 1 :(得分:0)

使用tester -c参数,您需要提供php.ini文件的路径,而不是包含它的文件夹。

此外,测试人员重置php环境以获得可重复的结果。最好提供自己的php.ini,它只定义所需的extesions:

[PHP}
extension=mysqli.so