sqlsrv_fetch_object
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
sqlsrv_fetch_object
Референца за `function.sqlsrv-fetch-object.php` со подобрена типографија и навигација.
sqlsrv_fetch_object
(Нема достапни информации за верзијата, можеби е само во Git)
sqlsrv_fetch_object — Ја презема следниот ред податоци во сет на резултати како објект
= NULL
resource
$stmt,string
$className = ?,array
$ctorParams = ?,int
$row = ?,int
$offset = ?): mixed
Ја презема следниот ред податоци во сет на резултати како инстанца на наведената класа со својства што одговараат на имињата на полињата на редот и вредности што одговараат на вредностите на полињата на редот.
Параметри
stmt- Ресурс за изјава креиран од sqlsrv_query() or sqlsrv_execute().
className- Име на класата за инстанцирање. Ако не е наведено име на класа, се инстанцира stdClass.
ctorParams- Вредности предадени на конструкторот на наведената класа. Ако конструкторот на наведената класа зема параметри, мора да се достави низата ctorParams.
row-
Редот до кој ќе се пристапи. Овој параметар може да се користи само ако наведената изјава е подготвена со курсор што може да се скрола. Во тој случак, овој параметар може да ги земе следниве вредности:
- SQLSRV_SCROLL_NEXT
- SQLSRV_SCROLL_PRIOR
- SQLSRV_SCROLL_FIRST
- SQLSRV_SCROLL_LAST
- SQLSRV_SCROLL_ABSOLUTE
- SQLSRV_SCROLL_RELATIVE
offset-
мора експлицитно да се дефинира.
SQLSRV_SCROLL_ABSOLUTEorSQLSRV_SCROLL_RELATIVEСпецифицира ред што треба да се пристапи ако параметарот ред е поставен на
Вратени вредности
Враќа објект при успех, null Враќа низа при успех, false ако се појави грешка или ако наведената класа не постои.
Примери
Пример #1 sqlsrv_fetch_object() example
Следниот пример покажува како да се преземе ред како stdClass објект.
<?php
$serverName = "serverName\sqlexpress";
$connectionInfo = array( "Database"=>"dbName", "UID"=>"username", "PWD"=>"password");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn === false ) {
die( print_r( sqlsrv_errors(), true));
}
$sql = "SELECT fName, lName FROM Table_1";
$stmt = sqlsrv_query( $conn, $sql);
if( $stmt === false ) {
die( print_r( sqlsrv_errors(), true));
}
// Retrieve each row as an object.
// Because no class is specified, each row will be retrieved as a stdClass object.
// Property names correspond to field names.
while( $obj = sqlsrv_fetch_object( $stmt)) {
echo $obj->fName.", ".$obj->lName."<br />";
}
?>Белешки
If a class name is specified with the optional $className parameter and the class has properties whose names match the result set field names, the corresponding result set values are applied to the properties. If a result set field name does not match a class property, a property with the result set field name is added to the object and the result set value is applied to the property. The following rules apply when using the $className parameter:
- Поклопувањето на името на полето-својството е чувствително на големи и мали букви.
- Поклопувањето на полето-својството се случува без оглед на модификаторите за пристап.
- Типовите на податоци на својствата на класата се игнорираат при примена на вредност на полето на својство.
- Ако класата не постои, функцијата враќа
falseи додава грешка во колекцијата на грешки.
При користење на сет на резултати што има повеќе колони со исто име, можеби е подобро да се користи sqlsrv_fetch_array() или комбинацијата од sqlsrv_fetch() and sqlsrv_get_field().
Види Исто така
- sqlsrv_fetch() - Го прави следниот ред во множеството резултати достапен за читање
- sqlsrv_fetch_array() - Враќа ред како низа