class" mysqli"找不到

时间:2014-03-21 07:53:43

标签: php windows mysqli

下的Apache / 2.0.65(Win32)PHP / 5.2.13服务器.. 当我运行CMD行并输入时:php -r "new mysqli();" CMD返回:致命错误:Class' mysqli'在第1行的命令行代码中找不到

然后我配置php.ini并从行extension = php_mysqli.dll的开头删除注释,并设置extension_dir =" C:\ PHP \ ext"甚至我将libmysql.dll和php_mysqli.dll复制到c:\ windows \ system32。但它仍然无法运作..

再次运行并仍然失败。

我在windows7 apache 2.0和php 5.2中运行

谁能帮助我,谢谢

3 个答案:

答案 0 :(得分:0)

您在php.ini中设置了extension_dir = "C:\PHP\ext"。但是,您将PHP扩展名放在C:\windows\system32

php_mysqli.dll必须位于C:\PHP\ext

答案 1 :(得分:0)

我遇到了同样的问题,我的问题是我有php.ini-production和php.ini-development文件。我不得不删除' -production'从我的php.ini-production文件的末尾开始,使它成为' php.ini'。然后,我必须确保我已经取消注释了' extension = mysqli'并更改' extension_dir ="分机"'到' extension_dir =" c:/ php / ext"'。

另外,我最初的PHP基本文件名为PHP7,因此我将其更改为' php'。不确定这是否是解决方案的一部分,但这是我为使我的mysqli库工作而迈出的一步。

答案 2 :(得分:0)

我在Windows 10上安装的PHP 7.4.7包含两个文件c:\php\php.ini-developmentc:\php.ini-production(下面是其中一个的详细信息)。我将第一个文件重命名为c:\php\php.ini,并启用了行extension_dir = "C:\PHP\ext"(通过删除行首的#注释符号)。然后,我可以连接到MySQL,该MySQL在localhost服务器上通过XAMPP运行。只是要说明一下,我使用了独立的PHP来连接XAMPP(它自己的PHP服务器随附)中的MySQL。

摘自.ini文档:

;;;;;;;;;;;;;;;;;;;
; About this file ;
;;;;;;;;;;;;;;;;;;;
; PHP comes packaged with two INI files. One that is recommended to be used
; in production environments and one that is recommended to be used in
; development environments.

; php.ini-production contains settings which hold security, performance and
; best practices at its core. But please be aware, these settings may break
; compatibility with older or less security conscience applications. We
; recommending using the production ini in production and testing environments.

; php.ini-development is very similar to its production variant, except it is
; much more verbose when it comes to errors. We recommend using the
; development version only in development environments, as errors shown to
; application users can inadvertently leak otherwise secure information.

; This is the php.ini-development INI file.

我希望这些步骤对您也有用。