Класс CallbackStatement
Оборачивает оператор в обратный вызов, который позволяет изменять результаты строк при их извлечении.
Используется CakePHP для жадной загрузки данных ассоциаций.
- Cake\Database\Statement\StatementDecorator implements Cake\Database\StatementInterface, Countable, IteratorAggregate uses Cake\Database\TypeConverterTrait
-
Cake\Database\Statement\CallbackStatement
Наследуемые константы
Резюме свойств
-
$_callbackprotectedФункция обратного вызова, которая должна применяться к результатам.callable
Наследуемые магические свойства
Наследуемые свойства
Резюме методов
- __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 = parent::FETCH_TYPE_NUM )
Извлечь строку из оператора.
Результат будет обработан обратным вызовом, когда он не false.
Параметры
- строка
$typeнеобязательно parent::FETCH_TYPE_NUM - Либо 'num', либо 'assoc' для указания желаемого формата результата.
Возвращает
массив|ложьПереопределяет
Cake\Database\Statement\StatementDecorator::fetch() fetchAll()source public
fetchAll( string $type = parent::FETCH_TYPE_NUM )
Извлечь все строки из оператора.
Каждая строка в результате будет обрабатываться обратным вызовом, когда она не равна `false.
Параметры
- строка
$typeнеобязательно parent::FETCH_TYPE_NUM - Либо 'num', либо 'assoc' для указания желаемого формата результата.
Возвращает
массивПереопределяет
Cake\Database\Statement\StatementDecorator::fetchAll() Методы, унаследованные от Cake\Database\Statement\StatementDecorator
__get()source public
__get( string $property )
Магический getter для возврата $queryString в качестве только для чтения.
Параметры
- строка
$property - внутреннее свойство для получения
Возвращает
смешанный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' - имя настроенного класса Type
Реализация
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 - список значений, которые нужно привязать к запросу
Возвращает
логическое значениеистина при успехе, ложь в противном случае
Реализация
Cake\Database\StatementInterface::execute() fetchAssoc()source public
fetchAssoc( )
Возвращает следующую строку в наборе результатов в виде массива с ассоциативными ключами. Вызов этой функции эквивалентен вызову $statement->fetch(StatementDecorator::FETCH_TYPE_ASSOC). Если результаты не найдены, возвращается ложь.
Возвращает
массивМассив результатов, содержащий столбцы и значения в виде ассоциативного массива, или пустой массив, если результатов нет
fetchColumn()source public
fetchColumn( integer $position )
Возвращает значение результата в заданной позиции.
Параметры
- целое число
$position - Числовая позиция столбца для извлечения из результата
Возвращает
mixed|falseВозвращает конкретное значение столбца, указанного в $position
getInnerStatement()source public
getInnerStatement( )
Возвращает объект инструкции, который был декорирован этим классом.
Возвращает
Cake\Database\StatementInterface|PDOStatementgetIterator()source public
getIterator( )
Инструкции можно итерировать как массивы, этот метод вернет объект итератора для перебора всех элементов в результате.
Пример:
$statement = $connection->prepare('SELECT id, title from articles');
foreach ($statement as $row) {
//do stuff
} Возвращает
Cake\Database\StatementInterface|PDOStatementРеализация
IteratorAggregate::getIterator() lastInsertId()source public
lastInsertId( string|null $table = null , string|null $column = null )
Возвращает идентификатор последнего вставленного элемента, используя эту инструкцию.
Параметры
- строка|null
$tableнеобязательно null - Имя таблицы или последовательности для получения последнего значения вставки
- строка|null
$columnнеобязательно null - Имя столбца, представляющего первичный ключ
Возвращает
строка|целое числоРеализация
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 Возвращает
целое числоРеализация
Cake\Database\StatementInterface::rowCount() Методы, используемые из Cake\Database\TypeConverterTrait
cast()source public
cast( mixed $value , Cake\Database\Type|string $type )
Преобразует заданное значение в подходящее значение базы данных в зависимости от типа и возвращает соответствующий внутренний тип инструкции.
Параметры
- смешанное
$value - Значение для преобразования
-
Cake\Database\Type|строка$type - Имя типа или экземпляр типа для использования.
Возвращает
массивсписок, содержащий преобразованное значение и внутренний тип
matchTypes()source public
matchTypes( array $columns , array $types )
Сопоставляет столбцы соответствующим типам.
И $columns, и $types должны быть либо числовыми, либо строковыми ключами одновременно.
Параметры
- массив
$columns - список или ассоциативный массив столбцов и параметров, которые будут связаны с типами
- массив
$types - список или ассоциативный массив типов
Возвращает
массивПодробное описание свойств
$_callbacksource
protected вызываемая функция
Функция обратного вызова, которая должна быть применена к результатам.
© 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/3.8/class-Cake.Database.Statement.CallbackStatement.html