函数名称:sqlsrv_get_field()
适用版本:PHP 5.2.0及以上版本
用法:sqlsrv_get_field(resource $stmt, int $fieldIndex [, int $getAsType = SQLSRV_PHPTYPE_STRING [, int $fieldOffset = 0]])
参数说明:
- $stmt:必需,一个有效的 SQL Server 语句句柄。
- $fieldIndex:必需,要获取的字段的索引或名称。索引从0开始。
- $getAsType:可选,指定字段的数据类型。默认为 SQLSRV_PHPTYPE_STRING。可选值包括:
- SQLSRV_PHPTYPE_INT:将字段作为整数类型返回。
- SQLSRV_PHPTYPE_FLOAT:将字段作为浮点数类型返回。
- SQLSRV_PHPTYPE_DATETIME:将字段作为 DateTime 对象返回。
- SQLSRV_PHPTYPE_STREAM:将字段作为流返回。
- SQLSRV_PHPTYPE_STRING:将字段作为字符串返回。
- $fieldOffset:可选,字段偏移量。默认为0,表示从字段的起始位置开始读取。
返回值:成功时返回字段的值,失败时返回 false。
示例:
$serverName = "serverName\sqlexpress";
$connectionOptions = array(
"Database" => "dbName",
"Uid" => "username",
"PWD" => "password"
);
$conn = sqlsrv_connect($serverName, $connectionOptions);
if ($conn === false) {
die(print_r(sqlsrv_errors(), true));
}
$sql = "SELECT id, name, age FROM users";
$stmt = sqlsrv_query($conn, $sql);
if ($stmt === false) {
die(print_r(sqlsrv_errors(), true));
}
while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) {
$id = sqlsrv_get_field($stmt, 0);
$name = sqlsrv_get_field($stmt, "name");
$age = sqlsrv_get_field($stmt, 2);
echo "ID: " . $id . "<br>";
echo "Name: " . $name . "<br>";
echo "Age: " . $age . "<br>";
}
sqlsrv_free_stmt($stmt);
sqlsrv_close($conn);
以上示例演示了如何使用sqlsrv_get_field()函数从 SQL Server 查询结果中获取字段的值。在循环中,我们使用不同的索引和名称获取不同字段的值,并将其打印输出。请确保已正确连接到 SQL Server 数据库,并已执行有效的查询语句。