Microsoft Drivers for PHP for SQL Server version 2.0 and 3.0 |
sqlsrv_num_fields |
Example See Also Send Feedback |
Retrieves the number of fields in an active result set. Note that sqlsrv_num_fields can be called on any prepared statement, before or after execution.
Syntax
sqlsrv_num_fields( resource $stmt) |
Parameters
$stmt: The statement on which the targeted result set is active.
Return Value
An integer value that represents the number of fields in the active result set. If an error occurs, the Boolean value false is returned.
Example
The following example executes a query to retrieve all fields for the top three rows in the HumanResources.Department table of the Adventureworks database. The sqlsrv_num_fields function determines the number of fields in the result set. This allows data to be displayed by iterating through the fields in each returned row.
The example assumes that SQL Server and the AdventureWorks database are installed on the local computer. All output is written to the console when the example is run from the command line.
Copy Code | |
---|---|
<?php /* Connect to the local server using Windows Authentication and specify the AdventureWorks database as the database in use. */ $serverName = "(local)"; $connectionInfo = array( "Database"=>"AdventureWorks"); $conn = sqlsrv_connect( $serverName, $connectionInfo); if( $conn === false ) { echo "Could not connect.\n"; die( print_r( sqlsrv_errors(), true)); } /* Define and execute the query. */ $tsql = "SELECT TOP (3) * FROM HumanResources.Department"; $stmt = sqlsrv_query($conn, $tsql); if( $stmt === false) { echo "Error in executing query.\n"; die( print_r( sqlsrv_errors(), true)); } /* Retrieve the number of fields. */ $numFields = sqlsrv_num_fields( $stmt ); /* Iterate through each row of the result set. */ while( sqlsrv_fetch( $stmt )) { /* Iterate through the fields of each row. */ for($i = 0; $i < $numFields; $i++) { echo sqlsrv_get_field($stmt, $i, SQLSRV_PHPTYPE_STRING(SQLSRV_ENC_CHAR))." "; } echo "\n"; } /* Free statement and connection resources. */ sqlsrv_free_stmt( $stmt ); sqlsrv_close( $conn ); ?> |