【发布时间】:2012-05-26 01:45:22
【问题描述】:
当我尝试从 PHP 代码连接到我的 MySQL 数据库时,一切似乎都很好,所有查询都成功执行。但是,当在 PHPUnit 中使用单元测试对代码进行测试时,我收到以下致命的 PHP 错误:
PHP 致命错误:调用未定义函数 mysql_connect()。
如前所述,此代码在单元测试之外运行良好,但 PHPUnit 会产生错误。
【问题讨论】:
-
您是否使用了两种不同的 PHP 解释器(可能一种是 php-cli,另一种是 php-cgi)?
-
请停止使用古老的
mysql_*函数编写新代码。它们不再维护,社区已经开始 deprecation processk 。相反,您应该了解prepared statements 并使用PDO 或MySQLi。如果您无法决定,this article 将帮助您选择。如果你想学习,here is a good PDO-related tutorial. -
刚刚快速重写了mysql_代码,但现在PHPUnit显示如下:找不到类'mysqli'。这是在 $mysqli = new mysqli("example.com", "user", "password", "database");被执行。我错过了什么?我是否需要包含一些文件才能使用 mysqli?
-
您是否在使用命名空间?
-
with phpunit class 'mysqli' is not found 的可能重复项 - 请检查这是否回答了您的问题,基本上您的 PHP CLI 配置没有您的问题建议的 MySQL。