类';mysqli';未找到PHP v5.6.7


Class 'mysqli' not found PHP v5.6.7

在我的Windows 7机器上,使用PHP v5.6.7和MySQL v5.6.23,并使用PHPStorm 8,我正在尝试实例化一个mysqli对象。当我尝试时,我得到:

Fatal error: Class 'mysqli' not found in...

我也运行了这个测试,这里建议:

 if (!function_exists('mysqli_init') && !extension_loaded('mysqli')) {
      echo 'no mysqli :(';
 } else {
      echo 'we gots it';
 }

输出为:

no mysqli :(

我在这里读到,这个问题有时是在命名空间中查找mysqli类时引起的。我更改了代码以更正此问题,但问题仍然存在

$mysqli = new 'mysqli($host, $userName, $password, $database);

我读到这个问题有时是在没有启用mysqli扩展时引起的。然而,我使用的是PHP 5.6.7版本,在5.3及更新版本上默认启用mysqli扩展(根据此处)。

可以肯定的是,我已经验证了php.ini-developmentphp.ini-productionextension_dir = "C:/PHP/php-5.6.7/ext",并且已经从行中删除了分号:

extension=php_mysql.dll
extension=php_mysqli.dll 

[附加信息]我找到了一个要运行的测试,根据phpinfo(),它没有加载配置文件:

Configuration File (php.ini) Path   C:'Windows
Loaded Configuration File   (none)
Scan this dir for additional .ini files (none)
Additional .ini files parsed    (none)

出于某种原因,PHPStorm web服务器没有在正确的位置查找php.ini?

我在"口译员选项"中有这个设置:

--php-ini C:'PHP'php-5.6.7'php.ini

我已经验证了这是正确的路径。

scrowler和Michael Bush在上面的评论中指出了答案。我想我应该为它创建一个答案,以便于有人查看该线程。谢谢,斯克罗勒和迈克尔·布什。

php.ini-developmentphp.ini-production文件是模板。为了生效,其中一个需要复制并重命名为php.ini

您是否已将PHP安装目录添加到环境路径中

  • 在"开始"菜单中右键单击我的计算机
  • 点击属性
  • 查找高级系统设置
  • 点击环境变量
  • 在系统变量下找到PATH,添加C:''php,用php替换C:''php安装目录;***记住路径分隔符

还要检查php.ini 中的此条目

; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
; extension_dir = "./"
; On windows:
extension_dir = "c:/php/ext"