|
sqlite_create_functionSQLiteDatabase::createFunction(PHP 5, sqlite >= 1.0.0) sqlite_create_function -- SQLiteDatabase::createFunction — Регистрирует "стандартную" функцию (UDF) для использования в SQL-запросах Описание
void sqlite_create_function
( resource $dbhandle
, string $function_name
, callback $callback
[, int $num_args = -1
] )
Объектно-ориентированный стиль (метод):
void SQLiteDatabase::createFunction
( string $function_name
, callback $callback
[, int $num_args = -1
] )
sqlite_create_function() позволяет зарегистрировать PHP функцию для использования в SQLite в качестве UDF (User Defined Function - функция, определенная пользователем), что позволяет использовать эту функцию в SQL-запросах. Определенная таким образом функция может быть использована в любом SQL-запросе, допускающем использование функций, например SELECT и UPDATE, а также в триггерах. Список параметров
Возвращаемые значенияЭта функция не возвращает значения после выполнения. Примеры
Пример #1 Пример использования sqlite_create_function()
<?php В этом примере мы определяем функцию, которая вычисляет MD5-хэш строки, а затем обращает полученную строку. При выполнении SQL-запроса, значение поля filename преобразуется нашей функцией. Массив $rows содержит обработанный результат. Достоинство этой техники в том, что нет необходимости обрабатывать полученный результат в цикле. При открытии базы данных, регистрируется функция с именем php. Эта функция может быть использована для вызова любой функции PHP без регистрации.
Пример #2 Пример использования функции php
<?php В этом примере, функция md5() будет вызвана для поля filename в каждой записи.
Подсказка
Не рекомендуется использовать UDF для обработки бинарных данных, за исключением случаев, когда нет необходимости достичь высокого быстродействия. Подсказка
sqlite_create_function() и sqlite_create_aggregate() могут быть использованы для переопределения встроенных функций SQLite. Смотрите также
|
|