2

当我尝试从 PHP 代码连接到我的 MySQL 数据库时,一切似乎都很好,所有查询都成功执行。但是,当使用 PHPUnit 中的单元测试对代码进行测试时,我收到以下致命的 PHP 错误:

PHP 致命错误:调用未定义的函数 mysql_connect()。

如前所述,此代码在单元测试之外运行良好,但 PHPUnit 会产生错误。

4

2 回答 2

0

您可能正在使用命名空间,因此mysql_queryorMySQLi在那里未定义。

尝试以下操作:

$mysqli = new \MySQLi(...);
于 2012-05-18T14:13:52.620 回答
0

我相信您正在使用 PHP 7 或更高版本进行测试。

php 文档 mysql_query中,它们描述了以下内容

警告 此扩展在 PHP 5.5.0 中已被弃用,并在 PHP 7.0.0 中被删除。相反,应该使用 MySQLi 或 PDO_MySQL 扩展。另请参阅 MySQL:选择 API 指南和相关的常见问题解答以获取更多信息。此函数的替代方法包括: mysqli_query() PDO::query()

因此,两种可能的解决方案:

  1. 将 PHP 降级到较低版本(< 7);
  2. 用 MySQLi 或 PDO 替换你的 mysql 函数。
于 2016-10-07T11:47:36.457 回答