从PHP 5.0开始,不仅可以使用早期的mysql数据库扩展函数,而且还可以使用新的扩展mysqli技术实现与MySQL数据库的信息交流。PHP的 mysqli扩展被封装到一个类中,它是一种面向对象的技术,只能在PHP 5和MySQL 4.1(或更高的版本)环境中使用,(i)表示改进,其执行速度更快。使用mysqli扩展和传统的过程化方法相比更方便也更高效。利用mysqli扩展 技术不仅可以调用MySQL的存储过程、处理MySQL事务,而且还可以使访问数据库工作变得更加稳定。
注:可以简单理解mysqli是mysql_*系列函数的一个加强版.
喜欢过程化编程的用户也不用担心,mysqli也有过程式的方式,提供了一个传统的函数式接口,只不过开始贯以mysqli的前缀,其他都差不多。 如果mysqli以过程式的方式操作的话,有些函数必须指定资源,比如说 mysqli_query(资源标识,SQL语句)。并且资源标识的参数是放在前面的,而mysql_query(SQL语句,'可选')的资源标识是放 在后面的,并且可以不指定,它默认是上一个打开的连接或资源。本书将重点介绍他的面向对象的用法,如果更喜欢以过程化方式编写程序,使用前面介绍的 mysql功能扩展模块就可以了。这里,希望读者使用面向对象的方式编程,这样可以编写出更容易阅读和理解的代码。
13.1 启用mysqli扩展模块
与mysql功能扩展模块类似,mysqli接口也不是PHP的一个集成组件,如果想使用这个功能扩展模块,需要显示配置PHP才能使用此扩展。在 不同平台下的配置有所不同,如果在Linux平台中启用mysqli扩展,必须在编译PHP时加上--with-mysqli选项。如果在Windows 平台中启用mysqli扩展,需要通过一个DLL文件提供相应的扩展。不管使用的是哪一个操作系统平台,都必须在php.ini文件里启用这个扩展,以确 保PHP能够找到所有必要的DLL。可以在php.ini文件中找到下面一行,取消前面的注释,如果没有找到就添加这样一行:
- extension=php_mysqli.dll //在php.ini文件中启用这一行
关于配置PHP的更多信息,请参见本书第2章的环境安装。另外,可以在PHP脚本文件中,调用phpinfo()函数检查PHP版本是否支持mysqli接口。如果找到如图13-1所示的结果,则所用的PHP版本中支持mysqli接口。
图13-1 使用phpinfo()函数检查mysqli扩展模块的支持 |