En este ejemplo, tenemos una función que calcula la suma SHA256 de una
string, luego la invierte. Cuando la sentencia SQL es ejecutada, retorna
el valor del nombre de fichero transformado por nuestra función.
Los datos retornados en $rows contienen el resultado procesado.
La ventaja de esta técnica es que no es necesario procesar el
resultado utilizando un bucle foreach
después de la ejecución de la consulta.
<?php
function sha256_and_reverse($string)
{
return strrev(hash('sha256', $string));
}
$db = new Pdo\Sqlite('sqlite::sqlitedb');
$db->sqliteCreateFunction('sha256rev', 'sha256_and_reverse', 1);
$rows = $db->query('SELECT sha256rev(filename) FROM files')->fetchAll();
?>