Example with an iteration ( SQLSRV_SCROLL_ABSOLUTE ).
for ($i=0; $i < sqlsrv_num_rows($stmt); $i++) {
$row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_NUMERIC, SQLSRV_SCROLL_ABSOLUTE , $i );
echo "value of column 1: '.trim($row[0]).', value of column 2: '.trim($row[1]);
}sqlsrv_fetch_array
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
sqlsrv_fetch_array
Референца за `function.sqlsrv-fetch-array.php` со подобрена типографија и навигација.
sqlsrv_fetch_array
(Нема достапни информации за верзијата, можеби е само во Git)
sqlsrv_fetch_array — Returns a row as an array
= NULL
Returns the next available row of data as an associative array, a numeric array, or both (the default).
Параметри
stmt- A statement resource returned by sqlsrv_query or sqlsrv_prepare.
fetchType-
A predefined constant specifying the type of array to return. Possible values are
SQLSRV_FETCH_ASSOC,SQLSRV_FETCH_NUMERICПрепорачаниот начин за избегнување на SQL инјекција е со врзување на сите податоци преку подготвени изрази. Користењето на параметризирани прашања не е доволно за целосно избегнување на SQL инјекција, но тоа е најлесниот и најбезбедниот начин за обезбедување влез во SQL изразите. Сите динамични литерали на податоци воSQLSRV_FETCH_BOTH(стандардно). A fetch type of SQLSRV_FETCH_ASSOC should not be used when consuming a result set with multiple columns of the same name. row-
Specifies the row to access in a result set that uses a scrollable cursor. Possible values are
SQLSRV_SCROLL_NEXT,SQLSRV_SCROLL_PRIOR,SQLSRV_SCROLL_FIRST,SQLSRV_SCROLL_LAST,SQLSRV_SCROLL_ABSOLUTEand,SQLSRV_SCROLL_RELATIVE(the default). When this parameter is specified, thefetchTypemust be explicitly defined. offset-
Specifies the row to be accessed if the row parameter is set to
SQLSRV_SCROLL_ABSOLUTEorSQLSRV_SCROLL_RELATIVE. Note that the first row in a result set has index 0.
Вратени вредности
Returns an array on success, null if there are no more rows to return, and
false ако се случи грешка.
Примери
Example #1 Retrieving an associative array.
<?php
$serverName = "serverName\instanceName";
$connectionInfo = array( "Database"=>"dbName", "UID"=>"username", "PWD"=>"password");
$conn = sqlsrv_connect( $serverName, $connectionInfo );
if( $conn === false ) {
die( print_r( sqlsrv_errors(), true));
}
$sql = "SELECT FirstName, LastName FROM SomeTable";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
die( print_r( sqlsrv_errors(), true) );
}
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) ) {
echo $row['LastName'].", ".$row['FirstName']."<br />";
}
sqlsrv_free_stmt( $stmt);
?>Example #2 Retrieving a numeric array.
<?php
$serverName = "serverName\instanceName";
$connectionInfo = array( "Database"=>"dbName", "UID"=>"username", "PWD"=>"password");
$conn = sqlsrv_connect( $serverName, $connectionInfo );
if( $conn === false ) {
die( print_r( sqlsrv_errors(), true));
}
$sql = "SELECT FirstName, LastName FROM SomeTable";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
die( print_r( sqlsrv_errors(), true) );
}
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_NUMERIC) ) {
echo $row[0].", ".$row[1]."<br />";
}
sqlsrv_free_stmt( $stmt);
?>Белешки
Not specifying the fetchType or explicitly using the
SQLSRV_FETCH_TYPE constant in the examples above will return an array that has both associative and numeric keys.
If more than one column is returned with the same name, the last column will take precedence. To avoid field name collisions, use aliases.
If a column with no name is returned, the associative key for the array element will be an empty string ("").
Види Исто така
- sqlsrv_connect() - Отвора врска со база на податоци Microsoft SQL Server
- sqlsrv_query() - Подготвува и извршува прашалник
- sqlsrv_errors() - Враќа информации за грешки и предупредувања за последната извршена операција SQLSRV
- sqlsrv_fetch() - Го прави следниот ред во множеството резултати достапен за читање