1.1 PHP访问MySQL
1.1.1 PHP访问MySQL的基本步骤
PHP提供了大量的MySQL数据库操作函数,可以方便地实现访问MySQL数据库的各种需要,从而轻松完成Web应用程序开发。本节主要讲解PHP访问MySQL数据库的基本步骤,具体如图1-1所示。
图1-1 PHP访问MySQL数据库的基本步骤
为了让读者更好地理解,接下来对图1-1中的步骤分别进行讲解。
1.连接MySQL服务器
使用mysql_connect()函数建立与MySQL服务器的连接。有关mysql_connect()函数的使用会在本章1.2.1节中介绍。
2.选择数据库
使用mysql_select_db()函数选择MySQL数据库服务器上的数据库,并与该数据库建立连接。有关mysql_select_db()函数的使用会在本章1.2.2节中介绍。
3.执行SQL语句
在所选择的数据库中使用mysql_query()函数执行SQL语句。有关mysql_query()函数的使用会在本章1.2.3节中介绍。
4.处理结果集
执行完SQL语句后,使用mysql_fetch_array()、mysql_fetch_row()、mysql_fetch_object()等函数对结果集进行相关操作,有关处理结果集的相关函数会在本章1.2.4节中介绍。
5.释放资源与关闭连接
处理完结果集后,需要使用mysql_free_result()函数关闭结果集,以释放系统资源。为了避免多用户连接造成系统性能下降甚至死机,在完成数据库的操作后,应使用mysql_close()函数断开与MySQL服务器的连接,有关mysql_free_result()和mysql_close()函数的使用会在本章1.2.5节中介绍。
1.1.2 PHP相关扩展介绍
PHP中提供了操作不同数据库的扩展,这里只介绍其中常用的mysql扩展、mysqli扩展以及抽象层的PDO扩展。
1.mysql扩展
在默认情况下,mysql扩展已经安装好了,但没有开启。要想开启mysql扩展,需要打开php.ini文件,将文件中“;extension=php_mysql.dll”语句的分号删除,同时保存修改后的文件,重新启动Apache服务器即可启动mysql扩展。
在成功启动mysql扩展后,可以通过phpinfo()函数获取mysql扩展的相关信息,验证mysql扩展是否开启成功。在Apache服务器的根目录下创建一个phpinfo.php文件,并在文件中编写下列代码:
<?php
phpinfo();//输出PHP配置信息
使用火狐浏览器访问地址“http://localhost/chapter01/phpinfo.php”,浏览器会输出PHP相关信息,其中包含mysql扩展的详细信息,具体如图1-2所示。
2.mysqli扩展
mysqli扩展是mysql的增强版扩展,它是MySQL 4.1及以上版本提供的功能。mysqli扩展在默认情况下已经安装好了,需要开启时,在php.ini配置文件中找到“;extension=php_mysqli.dll”去掉分号注释即可。修改后重新启动Apache,然后通过phpinfo()函数查看mysqli扩展是否开启成功,具体如图1-3所示。
3.PDO扩展
在早期的PHP版本中,由于不同数据库扩展的应用程序接口互不兼容,导致用PHP所开发的程序维护困难、可移植性差。为了解决这个问题,PHP开发人员编写了一种轻型、便利的API来统一操作各种数据库,即数据库抽象层——PDO扩展。
图1-2 使用phpinfo()查看mysql扩展信息
图1-3 使用phpinfo()查看mysqli扩展信息
PHP从5.1版本开始,在安装文件中含有PDO,在PHP 5.2中默认为开启状态,但是若要启动对MySQL数据库驱动程序的支持,仍需要进行相应的配置操作。需要开启时,在php.ini配置文件中找到“;extension=php_pdo_mysql.dll”去掉分号注释即可。修改完成后重新启动Apache,可通过phpinfo()函数查看PDO扩展是否开启成功,具体如图1-4所示。
图1-4 使用phpinfo()查看PDO扩展信息