函数名称:sqlsrv_fetch_array()
函数描述:从结果集中获取一行作为关联数组或数字索引数组。
适用版本:此函数适用于 PHP 5.2.0 及以上版本,并且需要安装 SQLSRV 扩展。
语法:sqlsrv_fetch_array ( resource $stmt [, int $fetchType = SQLSRV_FETCH_ASSOC [, int $row [, int $offset ]]] ) : mixed
参数:
- $stmt:SQL Server 语句句柄,通过 sqlsrv_query() 函数执行 SQL 查询并返回的结果集。
- $fetchType:可选参数,指定返回的数组类型。默认为 SQLSRV_FETCH_ASSOC,即关联数组。可选值有:
- SQLSRV_FETCH_ASSOC:返回关联数组。
- SQLSRV_FETCH_NUMERIC:返回数字索引数组。
- SQLSRV_FETCH_BOTH:返回同时包含关联数组和数字索引数组的混合数组。
- $row:可选参数,指定要获取的行号。默认为当前行。
- $offset:可选参数,指定偏移量。默认为 0。
返回值:成功时返回包含行数据的数组,失败时返回 false。
示例:
// 连接到数据库
$serverName = "serverName\sqlexpress";
$connectionOptions = array("Database"=>"dbName", "Uid"=>"username", "PWD"=>"password");
$conn = sqlsrv_connect( $serverName, $connectionOptions);
// 执行查询
$sql = "SELECT * FROM tableName";
$stmt = sqlsrv_query($conn, $sql);
// 获取结果集中的数据
while ($row = sqlsrv_fetch_array($stmt)) {
// 使用关联数组形式访问数据
echo $row['column1'] . ", " . $row['column2'] . "<br>";
// 使用数字索引数组形式访问数据
echo $row[0] . ", " . $row[1] . "<br>";
// 使用混合数组形式访问数据
echo $row[0] . ", " . $row['column2'] . "<br>";
}
// 释放结果集和关闭连接
sqlsrv_free_stmt($stmt);
sqlsrv_close($conn);
以上示例演示了如何使用 sqlsrv_fetch_array() 函数从结果集中获取数据。在循环中,通过关联数组、数字索引数组和混合数组的形式访问行数据。请根据实际情况修改数据库连接参数、查询语句和表名。