Home > Backend Development > PHP Tutorial > 打开php.ini文件中的 error_reporting选项导致mysql扩展加载失败

打开php.ini文件中的 error_reporting选项导致mysql扩展加载失败

WBOY
Release: 2016-06-06 20:51:03
Original
1320 people have browsed it

下载了一个项目的源码,运行时有很多的Notice级别的错误,于是在php.ini文件中的开启了error_reporting下的Default Value: E_ALL & ~E_NOTICE,但是发现,开启后会导致 Call to undefined function mysql_connect() 错误,连接不上数据库。开启 Development Value: E_ALL | E_STRICT
和 Production Value: E_ALL & ~E_DEPRECATED也是同样加载不了数据库模块。全都关闭的话就可以,不知各位有没有遇到过这个问题,求解~!

回复内容:

下载了一个项目的源码,运行时有很多的Notice级别的错误,于是在php.ini文件中的开启了error_reporting下的Default Value: E_ALL & ~E_NOTICE,但是发现,开启后会导致 Call to undefined function mysql_connect() 错误,连接不上数据库。开启 Development Value: E_ALL | E_STRICT
和 Production Value: E_ALL & ~E_DEPRECATED也是同样加载不了数据库模块。全都关闭的话就可以,不知各位有没有遇到过这个问题,求解~!

你这个错误跟error_reporting选项没多大关系,只是你关闭了这个选项后它就不显示错误了,但是错误还是存在的,只是没显示出来。

从错误来看很明显是你的mysql扩展没装上,需要注意的是现在的php默认是没有装mysql扩展的了。如果你是windows,可以在php.ini里找到

;extension=php_mysql.dll
Copy after login

把前面的分号去掉即可,如果你是用的ubuntu,而且你的php是用的apt-get安装的,那么可以在终端中输入

sudo apt-get install php-mysql
Copy after login

来安装mysql扩展。如果你是用的其它linux发行版,需要自己重新编译php,并在configure的时候加上--with-mysql=mysqlnd

不知道你下载的是什么源码,我有一次看个源码,也是这个错误,原因是他用的是PDO的方式加载的数据库,但是我没有开启PDO模块,你可以看看代码。

Related labels:
php
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template