关于在php.ini中添加extension=php_mysqli.dll指令的说明

yipeiwu_com7年前Mysql基础
在配置php5时要使用mysql作为数据库,很多人都认为只要在php.ini中添加extension=php_mysql.dll;指令即可,不清楚为什么很多文章都推荐还要添加extension=php_mysqli.dll;指令。

只要查看官方最新php手册便知,上面写到:

下面是内置的扩展库列表:

 PHP 5 中(截止到 5.0.4)有以下修改。新增内置:DOM,LibXML,Iconv,SimpleXML,SPL 和SQLite。以下不再内置:MySQL 和 Overload。

原来php5没有内置这些扩展库(当然也可以得出在使用php4时,不需要添加这些指令),至于为什么php5没有不再绑定mysql的客户端库,手册中也有说明:

部分原因是(无特定顺序): 

。现今大多数系统已经安装了客户端库了。 

。由于以上原因,保持多个版本的库文件会导致混乱。例如,如果把 mod_auth_mysql 连接到某个版本,但把 PHP 连接到了另一个版本,然后在 Apache 中同时激活了它们,会得到无数错误。此外,绑定的库文件也不总是能和服务器端的版本很好地配合。对此最明显的症状是上哪里去找 UNIX 域套接字文件 mysql.socket。 

。维护有些松懈,并且已经越来越落后于发行的版本了。 

。未来的库版本是基于 GPL 的,因此我们没有升级的途径了,因为我们不能将基于 GPL 的库和 BSD/Apache 风格许可证的项目绑定到一起。因此具有一个干净的 PHP 5 是最好的选择。

配置时为php激活两个扩展库的原因是因为:

  。为了能使用基本函数操作访问mysql数据库服务器,必须在配置php时添加mysql的支持,即使用php_mysql.dll扩展库。

  。虽然php_mysql.dll扩展库兼容mysql 4.1.0机器以后版本,但是它不支持这些版本提供的额外功能,要使用这些功能,还需要使用php_mysqli.dll扩展库。

  PHP 4 中(截止到 PHP 4.3.11):BCMath,Caledar,COM,Ctype,FTP,MySQL,ODBC,Overload,PCRE,Session,Tokenizer,WDDX,XML 和 Zlib。

相关文章

php+mysql查询实现无限下级分类树输出示例

本文实例讲述了php+mysql查询实现无限下级分类树输出。分享给大家供大家参考,具体如下: 这里介绍的php结合mysql查询无限下级树输出,其实就是无限分类。给各位整理了几个php无...

浅谈php中mysql与mysqli的区别分析

首先两个函数都是用来处理DB 的。首先, mysqli 连接是永久连接,而mysql是非永久连接。什么意思呢? mysql连接每当第二次使用的时候,都会重新打开一个新的进程,而mysql...

PHP+Mysql+jQuery实现动态展示信息

在本站前面有文章介绍了如何实现发表微博说说:PHP+Mysql+jQuery实现发布微博程序--jQuery篇,本例将基于其数据库结构,用动态的方式展示发表的说说信息。 查看示例:DE...

PHP与MYSQL中UTF8编码的中文排序实例

本文实例讲述了PHP与MYSQL中UTF8编码的中文排序方法,分享给大家供大家参考。具体实现方法如下: 一般来说,中文共有三种排序方式: 1.根据拼音排序; 2.根据笔画排序; 3.根据...

php+mysql实现数据库随机重排实例

本文实例实现了php+mysql数据库随机重排的方法,可将表中的所有数据随机读出来一次之后再进行随机保存到另一个表,从而达到了记录随机的功能。 主要实现代码如下: 复制代码 代码如下:&...