Spec-Zone.ru › CakePHP 3.5

Класс CallbackStatement

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

Используется CakePHP для жадной загрузки данных ассоциации.

Cake\Database\Statement\StatementDecorator implements Cake\Database\StatementInterface, Countable, IteratorAggregate uses Cake\Database\TypeConverterTrait
Extended by Cake\Database\Statement\CallbackStatement
Пространство имён: Cake\Database\Statement
Расположение: Database/Statement/CallbackStatement.php

Краткое описание свойств

  • $_callback protected
    callable
    Функция обратного вызова для применения к результатам.

Наследуемые магические свойства

  • queryString

Наследуемые свойства

  • _driver, _hasExecuted, _statement

Краткое описание методов

  • __construct() public
    Конструктор
  • fetch() public
    Извлечь строку из оператора.
  • fetchAll() public
    Извлечь все строки из оператора.

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

__construct()source public

__construct( Cake\Database\StatementInterface $statement , Cake\Database\Driver $driver , callable $callback )

Конструктор

Параметры

Cake\Database\StatementInterface $statement
Оператор для обработки.
Cake\Database\Driver $driver
Экземпляр драйвера, используемый оператором.
callable $callback
Обратный вызов для применения к результатам перед их возвращением.

Переопределяет

Cake\Database\Statement\StatementDecorator::__construct()

fetch()source public

fetch( string $type 'num' )

Извлечь строку из оператора.

Результат будет обработан функцией обратного вызова, если он не false.

Параметры

строка $type необязательно 'num'
Либо 'num', либо 'assoc' для указания формата результата.

Возвращает

array|false

Переопределяет

Cake\Database\Statement\StatementDecorator::fetch()

fetchAll()source public

fetchAll( string $type 'num' )

Извлечь все строки из оператора.

Каждая строка в результате будет обработана функцией обратного вызова, если она не равна `false.

Параметры

строка $type необязательно 'num'
Либо 'num', либо 'assoc' для указания формата результата.

Возвращает

array

Переопределяет

Cake\Database\Statement\StatementDecorator::fetchAll()

Методы, унаследованные от Cake\Database\Statement\StatementDecorator

__get()source public

__get( string $property )

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

Параметры

строка $property
внутреннее свойство для получения

Возвращает

mixed

bind()source public

bind( array $params , array $types )

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

Параметры

массив $params
список значений для связывания
массив $types
список типов, которые должны быть использованы, ключи должны соответствовать ключам в $params

Реализация

Cake\Database\StatementInterface::bind()

bindValue()source public

bindValue( string|integer $column , mixed $value , string $type 'string' )

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

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

Примеры:

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

Параметры

строка|целое число $column
имя или позиция параметра для связывания
смешанное $value
Значение для привязки к переменной в запросе
строка $type необязательно 'string'
имя настроенного класса типа

Реализация

Cake\Database\StatementInterface::bindValue()

closeCursor()source public

closeCursor( )

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

Реализация

Cake\Database\StatementInterface::closeCursor()

columnCount()source public

columnCount( )

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

Пример:

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

Возвращает

целое число

Реализация

Cake\Database\StatementInterface::columnCount()

count()source public

count( )

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

Возвращает

целое число

Реализация

Cake\Database\StatementInterface::count()

errorCode()source public

errorCode( )

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

Возвращает

целое число|строка

Реализация

Cake\Database\StatementInterface::errorCode()

errorInfo()source public

errorInfo( )

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

Возвращает

массив

Реализация

Cake\Database\StatementInterface::errorInfo()

execute()source public

execute( array|null $params null )

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

Параметры

массив|null $params необязательно null
список значений, которые нужно привязать к запросу

Возвращает

boolean
true при успехе, false в противном случае

Реализация

Cake\Database\StatementInterface::execute()

getInnerStatement()source public

getInnerStatement( )

Возвращает объект оператора, который был обработан этим классом.

Возвращает

Cake\Database\StatementInterface|PDOStatement

getIterator()source public

getIterator( )

Операторы итерируемы как массивы, этот метод вернет объект итератора для обхода всех элементов в результате.

Пример:

$statement = $connection->prepare('SELECT id, title from articles');
foreach ($statement as $row) {
  //do stuff
}

Возвращает

Cake\Database\StatementInterface|PDOStatement

Реализация

IteratorAggregate::getIterator()
END_OF_DOCUMENT_MARKER

lastInsertId()source public

lastInsertId( string|null $table null , string|null $column null )

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

Параметры

string|null $table необязательный null
имя таблицы или последовательности для получения последнего значения вставки
string|null $column необязательный null
имя столбца, представляющего первичный ключ

Возвращает

string

Реализация

Cake\Database\StatementInterface::lastInsertId()

rowCount()source public

rowCount( )

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

Пример:

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

Возвращает

integer

Реализация

Cake\Database\StatementInterface::rowCount()

Методы, используемые из Cake\Database\TypeConverterTrait

cast()source public

cast( mixed $value , Cake\Database\Type|string $type )

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

Параметры

mixed $value
Значение для преобразования
Cake\Database\Type|string $type
Имя типа или экземпляр типа для использования.

Возвращает

array
список, содержащий преобразованное значение и внутренний тип

matchTypes()source public

matchTypes( array $columns , array $types )

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

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

Параметры

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

Возвращает

array

Подробности свойств

$_callbacksource

protected callable

Функция обратного вызова, которая должна быть применена к результатам.

© 2005–2018 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/3.5/class-Cake.Database.Statement.CallbackStatement.html

Spec-Zone.ru

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