我有以下代码:
<?php
DEFINE ('DB_USER', 'test');
DEFINE ('DB_PASSWORD', 'test');
DEFINE ('DB_HOST', 'localhost');
DEFINE ('DB_NAME', 'site');
$dbc = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME)
OR die('Could not connect to MYSQL ' . mysqli_connect_error());
?>
如果我运行此命令,我将收到以下错误消息:
致命错误:未捕获错误:调用未定义函数mysqli_connect()
我正在使用PHP for Windows downloaded
根据我的阅读,您应该在php.ini文件中取消注释部分。我的PHP文件夹中没有php.ini,只有php.ini-development和php.ini-production。
我尝试将其中一个文件重命名为php.ini并取消注释extension=mysqli
,但问题仍然存在。
我该如何解决这个问题?
答案 0 :(得分:0)
正如设置所说,你必须重命名其中的一个,如果你没有PHP将使用默认值。
因此,将其中一个更改为php.ini并取消注释该行 - 据我所知,这不应该是真正需要的。
答案 1 :(得分:0)
对于Windows ,您可以在Trade
(Windows)或etc-Folder(xampp-Folder中)中找到该文件。
在Linux下,大多数发行版都将灯泡放在C:\xampp\php\php.ini-Folder
下,因此可以在/opt/lampp
下找到该文件。
如果你找不到它。然后你应该将其中一个重命名为php.ini文件。
答案 2 :(得分:0)
我遇到了同样的问题,大多数stackoverflow答案并没有真正明确地解决您设置php.ini时需要采取的其他步骤。如果您只是取消注释extension=mysqli
,php仍然不知道任何扩展名实际位于何处,因此将无法加载它们。找到您的php.ini部分,类似于:
; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
; extension_dir = "./"
; On windows:
; extension_dir = "ext"
然后取消注释底部的“ extension_dir”值,并使用“ ext”目录的绝对路径填写该值,即:
extension_dir = "<absolute-path-to-ext-folder>"
一旦完成了这两个步骤(取消注释extension=mysqli
,然后在extension_dir中添加绝对路径),mysqli便正确加载了