Maison >développement back-end >tutoriel php >PHP mysqli如何连接MySQL数据库_PHP教程
在学习1. 开启PHP的API支持
(1)首先修改您的php.ini的配置文件。
查找下面的语句:
;extension=php_mysqli.dll
将其修改为:
extension=php_mysqli.dll
(2)重新启动Apache/IIS,即可。
(3)说明:PHP需要单独的文件来支持这个扩展库,一般在PHP目录下的ext目录里能找到php_mysqli.dll文件(PHP
2.PHP mysqli身份证
mysqli是“MySQL, Improved”的缩写,该扩展仅适用于PHP 5。它能用于MySQL 4.1.1和更高版本。该扩展完全支持MySQL 5.1中采用的鉴定协议,也支持预处理语句和多语句API。此外,该扩展还提供了先进的、面向对象的编程接口。
3. mysqli预定义类
mysqli
表达了 PHP 和 MySQL 数据库之间的连接。
构造函数
mysqli - 构造一个新的PHP mysqli对象
方法
autocommit - 打开或关闭自动提交的数据库选项
change_user - 改变指定的数据库连接的用户
character_set_name - 返回数据库连接的默认字符集
close - 关闭一个之前打开的连接
commit - 提交当前事务
connect - 打开一个到 MySQL 数据库服务器的新连接
debug - 执行排错操作
dump_debug_info - 取得排错信息
get_client_info - 返回客户端版本
get_host_info - 返回连接使用的类型
get_server_info - 返回 MySQL 服务器的版本
get_server_version - 返回 MySQL 服务器的版本
init - 初始化PHP mysqli对象
info - 取得最近执行的查询的信息
kill - 要求服务器停止一个 mysql 线程
multi_query - 执行多个查询
more_results - check if more results exist from currently executed multi-query
next_result - reads next result from currently executed multi-query
options - set options
ping - pings a server connection or reconnects if there is no connection
prepare - prepares a SQL query
query - performs a query
real_connect - attempts to open a connection to MySQL database server
escape_string - escapes special characters in a string for use in a SQL statement, taking into account the current charset of the connection
rollback - rolls back the current transaction
select_db - selects the default database
set_charset - sets the default client character set
ssl_set - sets ssl parameters
stat - gets the current system status
stmt_init- initializes a statement for use with mysqli_stmt_prepare
store_result - transfers a resultset from last query
thread_safe - returns whether thread safety is given or not
use_result - transfers an unbuffered resultset from last query
属性
affected_rows - gets the number of affected rows in a previous MySQL operation
client_info - returns the MySQL client version as a string
client_version - returns the MySQL client version as an integer
errno - returns the error code for the most recent function call
error - returns the error string for the most recent function call
field_count - returns the number of columns for the most recent query
host_info - returns a string representing the type of connection used
info - retrieves information about the most recently executed query
insert_id - returns the auto generated id used in the last query
protocol_version - returns the version of the MySQL protocol used
server_info - returns a string that represents the server version number
server_version - returns the version number of the server as an integer
sqlstate - returns a string containing the SQLSTATE error code for the last error
thread_id - returns the thread ID for the current connection
warning_count - returns the number of warnings generated during execution of the previous SQL statement
4. 基本语法
<ol class="dp-xml"> <li class="alt"><span><strong><font color="#006699"><span class="tag"></span><span class="tag-name">php</span></font></strong><span> </span></span></li> <li class=""><span> </span></li> <li class="alt"><span> /* Connect to a MySQL server 连接数据库服务器 */ </span></li> <li class=""> <span> $</span><span class="attribute"><font color="#ff0000">link</font></span><span> = </span><span class="attribute-value"><font color="#0000ff">mysqli_connect</font></span><span>( </span> </li> <li class="alt"><span> 'localhost', /* The host to connect to 连接MySQL地址 */ </span></li> <li class=""><span> 'user', /* The user to connect as 连接MySQL用户名 */ </span></li> <li class="alt"><span> 'password', /* The password to use 连接MySQL密码 */ </span></li> <li class=""><span> 'world'); /* The default database to query 连接数据库名称*/ </span></li> <li class="alt"><span> </span></li> <li class=""><span> if (!$link) { </span></li> <li class="alt"><span> printf("Can't connect to MySQL Server. Errorcode: %s ", mysqli_connect_error()); </span></li> <li class=""><span> exit; </span></li> <li class="alt"><span> } </span></li> <li class=""><span> </span></li> <li class="alt"><span> /* Send a query to the server 向服务器发送查询请求*/ </span></li> <li class=""> <span> if ($</span><span class="attribute"><font color="#ff0000">result</font></span><span> = </span><span class="attribute-value"><font color="#0000ff">mysqli_query</font></span><span>($link, 'SELECT Name, Population FROM City ORDER BY Population DESC LIMIT 5')) { </span> </li> <li class="alt"><span> </span></li> <li class=""><span> print("Very large cities are: "); </span></li> <li class="alt"><span> </span></li> <li class=""><span> /* Fetch the results of the query 返回查询的结果 */ </span></li> <li class="alt"> <span> while( $</span><span class="attribute"><font color="#ff0000">row</font></span><span> = </span><span class="attribute-value"><font color="#0000ff">mysqli_fetch_assoc</font></span><span>($result) ){ </span> </li> <li class=""><span> printf("%s (%s) ", $row['Name'], $row['Population']); </span></li> <li class="alt"><span> } </span></li> <li class=""><span> </span></li> <li class="alt"><span> /* Destroy the result set and free the memory used for it 结束查询释放内存 */ </span></li> <li class=""><span> mysqli_free_result($result); </span></li> <li class="alt"><span> } </span></li> <li class=""><span> </span></li> <li class="alt"><span> /* Close the connection 关闭连接*/ </span></li> <li class=""><span> mysqli_close($link); </span></li> <li class="alt"> <span> </span><span class="tag"><strong><font color="#006699">?></font></strong></span><span> </span> </li> </ol>
以上所描写的解决办法能够帮助我们轻松解决PHP mysqli连接数据库的问题。