sqlsrv_fetch_object
(No version information available, might only be in Git)
sqlsrv_fetch_object — Отримує наступний рядок даних у наборі результатів як об'єкт
Опис
sqlsrv_fetch_object( resource $stmt, string $className = ?, array $ctorParams = ?, int $row = ?, int $offset = ?): mixed
Витягує наступний рядок даних у наборі результатів як екземпляр зазначеного класу з властивостями, що відповідають іменам полів рядка та значенням, що відповідають значенням полів рядка.
Список параметрів
stmt
Ресурс оператора, що повертається sqlsrv_query() або 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_ABSOLUTE
** або **SQLSRV_SCROLL_RELATIVE
**Обратите внимание, что первая строка в наборе результатов имеет индекс 0.
Значення, що повертаються
У разі успішного виконання повертає об'єкт, **null
**якщо в наборі результатів більше немає рядків і false
у разі виникнення помилки або якщо зазначений клас не існує.
Приклади
Приклад #1 Приклад використання sqlsrv_fetch_object()****
У цьому прикладі показано, як отримати рядок як об'єкт stdClass.
Loading...
Примітки
Якщо ім'я класу вказано з необов'язковим параметром $className і клас має властивості, імена яких збігаються з іменами полів набору результатів, до властивостей застосовуються відповідні значення набору результатів. Якщо ім'я поля набору результатів не відповідає властивості класу, властивість з ім'ям поля набору результатів додається до об'єкта, а значення набору результатів застосовується до властивості. При використанні параметра $className застосовуються такі правила:
- При зіставленні імен властивостей поля враховується регістр.
- Порівняння властивостей поля відбувається незалежно від модифікаторів доступу.
- Типи даних властивостей класу ігноруються при застосуванні значення поля властивості.
- Якщо клас немає, функція повертає**
false
**та додає помилку до колекції помилок.
Незалежно від того, чи вказано параметр $className, якщо поле повертається без імені, значення поля буде проігноровано, а до колекції помилок буде додано попередження.
При використанні набору результатів, що містить кілька стовпців з однаковим ім'ям, можливо краще використовувати sqlsrv_fetch_array() або комбінацію sqlsrv_fetch() і sqlsrv_get_field()
Дивіться також
- sqlsrv_fetch() - Робить наступний рядок у наборі результатів доступного для читання
- sqlsrv_fetch_array() - Повертає рядок як масив