Spec-Zone.ru › CakePHP 4.2

Класс BufferedStatement

Декоратор оператора, реализующий буферизованные результаты.

Этот декоратор оператора сохранит полученные результаты в памяти, позволяя итератору перематываться и повторно использоваться.

Пространство имен: Cake\Database\Statement

Константы

  • string
    FETCH_TYPE_ASSOC
    'assoc'

    Используется для указания, что в результате при вызове методов fetch будет возвращен ассоциативный массив.

  • string
    FETCH_TYPE_NUM
    'num'

    Используется для указания, что в результате при вызове методов fetch будут возвращены числовые индексы.

  • string
    FETCH_TYPE_OBJ
    'obj'

    Используется для указания, что в результате при вызове методов fetch будет возвращено объект stdClass.

Резюме свойств

  • $_allFetched protected
    bool

    Если true, все строки были извлечены.

  • $_driver protected
    Cake\Database\DriverInterface

    Драйвер для оператора.

  • $_hasExecuted protected
    bool

    Выполнялся ли этот оператор ранее.

  • $buffer protected
    array

    Кэш в памяти, содержащий результаты предыдущих итераторов.

  • $index protected
    int

    Текущий индекс итератора.

  • $queryString public @property-read
    string
  • $statement protected
    Cake\Database\StatementInterface

    Декорированный оператор.

Резюме методов

  • __construct() public

    Конструктор

  • __get() public

    Магический геттер для возвращения $queryString в качестве только для чтения.

  • _reset() protected

    Сброс всех свойств

  • bind() public

    Связывает набор значений с объектом оператора с соответствующим типом.

  • bindValue() public

    Назначает значение позиционной или именованной переменной в подготовленном запросе. Если вы используете позиционные переменные, вам необходимо начать с индекса один, если вы используете именованные параметры, то просто используйте имя в любом порядке.

  • cast() public

    Преобразует заданное значение в соответствующее значение базы данных на основе типа и возвращает соответствующий внутренний тип оператора.

  • closeCursor() public

    Закрывает курсор в базе данных, освобождая все ресурсы и память, выделенные для него. В большинстве случаев вам не нужно вызывать этот метод, так как он автоматически вызывается после извлечения всех результатов из набора результатов.

  • columnCount() public

    Возвращает количество столбцов, которые будет содержать результат этого оператора.

  • count() public

    Операторы могут передаваться в качестве аргумента для count() для возврата количества затронутых строк из последнего выполнения.

  • current() public

    Возвращает текущую запись в итераторе.

  • errorCode() public

    Возвращает код ошибки для последней ошибки, произошедшей при выполнении этого оператора.

  • errorInfo() public

    Возвращает информацию об ошибке для последней ошибки, произошедшей при выполнении этого оператора.

  • execute() public

    Выполняет оператор, отправляя SQL-запрос в базу данных. Он может необязательно принимать массив или аргументы, которые будут связаны с переменными запроса. Обратите внимание, что привязка параметров из этого метода не будет выполнять никакого пользовательского преобразования типов, как это обычно происходит при вызове bindValue.

  • fetch() public

    Возвращает следующую строку для набора результатов после выполнения этого оператора. Строки могут извлекаться для включения столбцов как имен, так и позиций. Если в наборе результатов не осталось строк, этот метод вернет false.

  • fetchAll() public

    Возвращает массив со всеми строками, полученными в результате выполнения этого оператора.

  • fetchAssoc() public
  • fetchColumn() public

    Возвращает значение результата в позиции.

  • getInnerStatement() public

    Получить обернутый оператор.

  • key() public

    Возвращает текущий ключ в итераторе.

  • lastInsertId() public

    Возвращает последний вставленный первичный ключ, используемый этим оператором.

  • matchTypes() public

    Сопоставляет столбцы с соответствующими типами.

  • next() public

    Перемещает указатель итератора к следующему элементу.

  • rewind() public

    Перематывает коллекцию.

  • rowCount() public

    Возвращает количество строк, затронутых этим SQL-оператор.

  • valid() public

    Возвращает значение true или false, указывая на то, есть ли у итератора больше элементов.

END_OF_DOCUMENT_MARKER

Подробное описание методов

__construct() public

__construct(Cake\Database\StatementInterface $statement, Cake\Database\DriverInterface $driver)

Конструктор

Параметры

Cake\Database\StatementInterface $statement

Реализация оператора, например, PDOStatement

Cake\Database\DriverInterface $driver

Экземпляр драйвера

__get() public

__get(string $property): mixed

Магический геттер для возврата $queryString в качестве значения только для чтения.

Параметры

string $property

Внутреннее свойство для получения

Возвращает

mixed

_reset() protected

_reset(): void

Сбросить все свойства

Возвращает

void

bind() public

bind(array $params, array $types): void

Привязывает набор значений к объекту оператора с соответствующим типом

Параметры

array $params
array $types

Возвращает

void

bindValue() public

bindValue(string|int $column, mixed $value, string|int|null $type = 'string'): void

Присваивает значение позиционной или именованной переменной в подготовленном запросе. При использовании позиционных переменных необходимо начинать с индекса один, при использовании именованных параметров достаточно использовать имя в любом порядке.

Не разрешается объединять позиционные и именованные переменные в одном операторе

Примеры:

$statement->bindValue(1, 'a title');
$statement->bindValue('active', true, 'boolean');
$statement->bindValue(5, new \DateTime(), 'date');

Параметры

string|int $column
mixed $value
string|int|null $type необязательно

Возвращает

void

cast() public

cast(mixed $value, Cake\Database\TypeInterface|string|int $type = 'string'): array

Преобразует данное значение в подходящее значение базы данных на основе типа и возвращает соответствующий внутренний тип оператора.

Параметры

mixed $value

Значение для преобразования

Cake\Database\TypeInterface|string|int $type необязательно

Имя типа или экземпляр типа для использования.

Возвращает

array

closeCursor() public

closeCursor(): void

Закрывает курсор в базе данных, освобождая любые ресурсы и память, выделенные для него. В большинстве случаев вызывать этот метод не нужно, так как он автоматически вызывается после извлечения всех результатов из набора результатов.

Возвращает

void

columnCount() public

columnCount(): int

Возвращает количество столбцов, которые будут содержать результаты этого оператора

Пример:

$statement = $connection->prepare('SELECT id, title from articles');
 $statement->execute();
 echo $statement->columnCount(); // outputs 2

Возвращает

int

count() public

count(): int

Операторы могут быть переданы в качестве аргумента для count() для возврата числа затронутых строк с последнего выполнения.

Возвращает

int

current() public

current(): mixed

Возвращает текущую запись в итераторе

Возвращает

mixed

errorCode() public

errorCode(): int|string

Возвращает код ошибки для последней ошибки, произошедшей при выполнении этого оператора

Возвращает

int|string

errorInfo() public

errorInfo(): array

Возвращает информацию об ошибке для последней ошибки, произошедшей при выполнении этого оператора

Возвращает

array

execute() public

execute(array|null $params = null): bool

Выполняет оператор, отправляя SQL-запрос в базу данных. Он может необязательно принимать массив или аргументы для привязки к переменным запроса. Обратите внимание, что привязка параметров из этого метода не выполнит никакого пользовательского преобразования типов, как это обычно происходит при вызове bindValue

Параметры

array|null $params необязательно

Возвращает

bool

fetch() public

fetch(string|int $type = self::FETCH_TYPE_NUM): array|false

Возвращает следующую строку для набора результатов после выполнения этого оператора. Строки могут быть извлечены для хранения столбцов как имен, так и позиций. Если в наборе результатов не осталось строк, этот метод вернет false

Пример:

$statement = $connection->prepare('SELECT id, title from articles');
 $statement->execute();
 print_r($statement->fetch('assoc')); // will show ['id' => 1, 'title' => 'a title']

Параметры

string|int $type необязательно

Тип для извлечения.

Возвращает

array|false

fetchAll() public

fetchAll(string|int $type = self::FETCH_TYPE_NUM): array|false

Возвращает массив со всеми строками, полученными в результате выполнения этого оператора

Пример:

$statement = $connection->prepare('SELECT id, title from articles');
 $statement->execute();
 print_r($statement->fetchAll('assoc')); // will show [0 => ['id' => 1, 'title' => 'a title']]

Параметры

string|int $type необязательно

Возвращает

array|false

fetchAssoc() public

fetchAssoc(): array

Возвращает

array

fetchColumn() public

fetchColumn(int $position): mixed

Возвращает значение результата в позиции.

Параметры

int $position

Возвращает

mixed

getInnerStatement() public

getInnerStatement(): Cake\Database\StatementInterface

Получить обернутый оператор

Возвращает

Cake\Database\StatementInterface

key() public

key(): mixed

Возвращает текущий ключ в итераторе

Возвращает

mixed

lastInsertId() public

lastInsertId(string|null $table = null, string|null $column = null): string|int

Возвращает последний вставленный первичный ключ с помощью этого оператора

Параметры

string|null $table необязательно
string|null $column необязательно

Возвращает

string|int

matchTypes() public

matchTypes(array $columns, array $types): array

Сопоставляет столбцы с соответствующими типами

И $columns, и $types должны быть либо числовыми, либо строковыми ключами одновременно.

Параметры

array $columns

Список или ассоциативный массив столбцов и параметров, которые будут связаны с типами

array $types

Список или ассоциативный массив типов

Возвращает

array

next() public

next(): void

Перемещает указатель итератора к следующему элементу

Возвращает

void

rewind() public

rewind(): void

Перематывает коллекцию

Возвращает

void

rowCount() public

rowCount(): int

Возвращает количество строк, затронутых этим SQL-оператором

Пример:

$statement = $connection->prepare('SELECT id, title from articles');
 $statement->execute();
 print_r($statement->rowCount()); // will show 1

Возвращает

int

valid() public

valid(): bool

Возвращает, есть ли у итератора еще элементы

Возвращает

bool

Подробное описание свойств

$_allFetched protected

Если истинно, все строки были извлечены

Тип

bool

$_driver protected

Драйвер для оператора

Тип

Cake\Database\DriverInterface

$_hasExecuted protected

Выполнен ли данный оператор

Тип

bool

$buffer protected

Кэш в памяти, содержащий результаты предыдущих итераторов

Тип

array

$index protected

Текущий индекс итератора.

Тип

int

$queryString public @property-read

Тип

string

$statement protected

Декорированный оператор

Тип

Cake\Database\StatementInterface

© 2005–present The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
https://api.cakephp.org/4.2/class-Cake.Database.Statement.BufferedStatement.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API