PHP:mysqli 扩展未加载

标签 php apache mysqli

我尝试将 MySQL 与 PHP 结合使用,但出现此错误:

Fatal error: Uncaught Error: Call to undefined function mysqli_connect() in 'file_name Stack trace: #0 {main} thrown in 'file_name'`

在执行 print_r( get_define_functions()) 时,我发现 MySQLi 扩展不存在,但它已“加载”到 php.ini 文件中(我的意思是这不在评论中)。

我指定PHP目录在PATH中(我在windows下),MySQL、PHP和Apache在我的C:盘上。

我不知道问题出在哪里,这可能是一件小事,但我看不出是哪一个。

我的版本是:

Apache 2.4.47
PHP 7.1.7
MySQL 5.7
Windows 7

PS:php_mysqli.dll 仅执行 97k。不知道是否正常。

我是如何解决这个问题的:我刚刚在 php.ini 文件中加载扩展的行下添加了 extension_dir="path_to_php\ext" 。该行用于指示硬盘中扩展的位置。不要忘记重新启动服务器,它会重新加载 php.ini 文件。

最佳答案

首先,运行phpinfo()以确保您正在查看正确的php.ini

如果您的 php.ini 文件中有 extension=php_mysqli.dll 未注释,请检查您的扩展目录。您可能需要明确设置它,例如:

extension_dir="C:\xampp\php\ext"

如果问题仍然存在,请检查 apache 错误日志,您应该在那里找到更多信息。

关于PHP:mysqli 扩展未加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48235645/

相关文章:

wordpress - <If> 语句破坏了 Rewrite* 规则

apache - 如何阻止其他人的域名指向我的Apache托管网站?

php - MySQLi 返回错误结果

php - mysqli_fetch_assoc()需要参数/调用成员函数bind_param()错误。如何获取并修复实际的mysql错误?

php - 当用户成功完成 mysql 查询时,在 http 请求中传递 URL 中的变量

php - 我如何使用循环下拉列表更新特定记录,其记录来自 mysql

php - APE服务器: How to configure SSL?

python - Django Apache SSL [代码 400,消息错误请求]

php - PDO异常 “could not find driver”

php - 在 jQuery 中访问 JSON 编码的 PHP 数组