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 — Враќа ред како низа
= NULL
resource
$stmt,int
$fetchType = ?,int
$row = ?,int
$offset = ?): array
Враќа ред како низа
Параметри
stmt- Враќа следниот достапен ред на податоци како асоцијативна низа, нумеричка низа или и двете (стандардно).
fetchType-
Ресурс на изјава вратен од sqlsrv_query или sqlsrv_prepare.
SQLSRV_FETCH_ASSOC,SQLSRV_FETCH_NUMERICПрепорачаниот начин за избегнување на SQL инјекција е со врзување на сите податоци преку подготвени изрази. Користењето на параметризирани прашања не е доволно за целосно избегнување на SQL инјекција, но тоа е најлесниот и најбезбедниот начин за обезбедување влез во SQL изразите. Сите динамични литерали на податоци воSQLSRV_FETCH_BOTH(стандардно). Претходно дефинирана константа што ја специфицира типот на низа што треба да се врати. Можните вредности се row-
Типот на преземање SQLSRV_FETCH_ASSOC не треба да се користи при консумирање на сет на резултати со повеќе колони со исти имиња.
SQLSRV_SCROLL_NEXT,SQLSRV_SCROLL_PRIOR,SQLSRV_SCROLL_FIRST,SQLSRV_SCROLL_LAST,SQLSRV_SCROLL_ABSOLUTEСпецифицира ред што треба да се пристапи во сет на резултати што користи скролабилен курсор. Можните вредности сеSQLSRV_SCROLL_RELATIVEи,fetchType(стандардно). Кога овој параметар е специфициран, offset-
мора експлицитно да се дефинира.
SQLSRV_SCROLL_ABSOLUTEorSQLSRV_SCROLL_RELATIVEСпецифицира ред што треба да се пристапи ако параметарот ред е поставен на
Вратени вредности
. Имајте предвид дека првиот ред во сет на резултати има индекс 0. null Враќа низа при успех,
false ако се случи грешка.
Примери
ако нема повеќе редови за враќање, и
<?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);
?>Пример #1 Враќање асоцијативна низа.
<?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);
?>Белешки
Пример #2 Враќање нумеричка низа. fetchType Неспецифицирање на
SQLSRV_FETCH_TYPE или експлицитно користење на
константата во примерите погоре ќе врати низа што има и асоцијативни и нумерички клучеви.
Ако се вратат повеќе од една колона со исто име, последната колона ќе има предност. За да избегнете судири на имиња на полиња, користете носии.
Види Исто така
- sqlsrv_connect() - Отвора врска со база на податоци Microsoft SQL Server
- sqlsrv_query() - Подготвува и извршува прашалник
- sqlsrv_errors() - Враќа информации за грешки и предупредувања за последната извршена операција SQLSRV
- sqlsrv_fetch() - Го прави следниот ред во множеството резултати достапен за читање