2017-04-25 159 views
0

我在我的项目中使用mysqli,我想我已经正确安装了扩展。mysqli_connect和mysql_connect在PHP中不存在5.6.30

我的php.ini文件看起来像这样和加载的配置文件httpd.conf中与匹配,两者都是C:\ PHP \ php.ini中:

.. 
extension_dir = "/ext" 
.. 
extension=php_mysql.dll 
extension=php_mysqli.dll 
.. 

问题:

当我发布我的网站Apache24休息室声明function_exists ('mysqli_connect')变成false,还有function_exists ('mysql_connect')也返回false!我不知道为什么:(

然而,当我使用php -f test.php当创建一个测试文件(test.php的),语句function_exists ('mysqli_connect')返回true,显示了mysql_connectmysqli_connect同时安装并存在。

配置

我已经安装在Windows 10以下产品:

PHP 30年6月5日,二进制版本X64,复制到C:\ PHP

的MySQL 5.7使用其安装程序进行安装,TCPIP端口默认3306

Apache24休息室C:\ Apache24

以下地址添加到%path%

C:\Apache24\bin 
C:\php 
C:\php\ext 
C:\Program Files\MySQL\MySQL Server 5.7\bin 
+0

您是否使用phpinfo()创建了一个Web脚本来显示它认为安装的内容。从CLI运行时,它可能有不同的设置。 –

+0

检查与服务器相关的ini文件。你可以添加phpinfo();你的一个php文件并执行该请求并尝试。 –

+0

使用http://php.net/manual/en/mysqli.examples-basic.php –

回答

1

您可能有两个php.ini的文件,在Linux中你可能有类似的东西

/etc/php5/cli/php.ini 
/etc/php5/apache2/php.ini 

确保它们都有mysqli extensio n已启用。 apache2用于任何http请求。

+0

我用phpinfo(1)检查加载的配置文件,它是'C:\ php \ php.ini',这是我期望的,httpd.conf也设置为'c:\ php \ php.ini' – Zich

+0

它这是什么它在网页的phpinfo输出中说的? –

+0

是的,让我把它上传到某个地方 – Zich