PHPKonf İstanbul PHP Conference 2015

SQLite3::createAggregate

(PHP 5 >= 5.3.0)

SQLite3::createAggregateRegistrar una función de PHP para usarla como una función totalizadora de SQL

Descripción

public bool SQLite3::createAggregate ( string $name , mixed $step_callback , mixed $final_callback [, int $argument_count = -1 ] )

Registra una función de PHP o una definida por el usuario para usarla como una función totalizadora de SQL para utilizarla dentro de sentencias SQL.

Parámetros

name

El nombre de la función totalizadora de SQL a crear o redefinir.

step_callback

El nombre de una función de PHP o una definida por el usuario para aplicarla como una llamada de retorno para cada elemento del total.

final_callback

El nombre de una función de PHP o una definida por el usuario para aplicarla como una llamada de retorno al final de la información del total.

argument_count

El número de argumentos que toma la función de SQL. Si este parámetro es negativo, la función de SQL puede tomar cualquier número de argumentos.

Valores devueltos

Devuelve TRUE si la creación de la función totalizadora tuvo éxito, FALSE en case de error.

add a note add a note

User Contributed Notes 1 note

up
-1
sukmaagungsaputra at gmail dot com
4 months ago
Lacks of example, right?
Let's try to give to SQlite3 the capability like ones of MySQL's
- REGEXP operator,
- MD5 function, and
- GROUP_CONCAT aggregate function

$db = new SQLite3($filename);
$db->createFunction('regexp', function ($a,$b) { return preg_match("/$a/i", $b); });
$db->createFunction('md5', function ($a) { return md5($a); });
$db->createAggregate ('group_concat',
            function(&$context, $rownumber, $str) { $context[]=$str; return $context; },
            function(&$context) {return implode(",", (array) $context); });
To Top