(PHP 5 >= 5.3.0, PHP 7, PHP 8)
SQLite3::createFunction — Enregistre une fonction PHP à utiliser comme fonction scalaire SQL
$name
,$callback
,$argCount
= -1,$flags
= 0Enregistre une fonction PHP ou une fonction utilisateur à utiliser comme fonction scalaire SQL, pour utilisation dans les requête SQL.
name
Nom de la fonction SQL à créer ou à redéfinir.
callback
Le nom de la fonction PHP ou la fonction utilisateur à appliquer comme callback, définissant le comportement de la fonction SQL.
Cette fonction doit être définit comme :
value
Le premier argument à passer à la fonction SQL.
values
Arguments supplémentaires à passer à la fonction SQL.
argCount
Nombre d'arguments que la fonction SQL prend. Si ce paramètre est
-1
, la fonction SQL peut prendre n'importe quel nombre
d'arguments.
flags
Une conjonction d'opérations de bits d'indicateurs. Actuellement, seul
SQLITE3_DETERMINISTIC
est pris en charge, ce qui
spécifie que la fonction retourne toujours le même résultat étant donné
les mêmes entrées dans une seule instruction SQL.
Retourne true
si la fonction a été créée avec succès, false
si une erreur
survient.
Version | Description |
---|---|
7.1.4 |
Le paramètre flags a été ajouté.
|
Exemple #1 Exemple avec SQLite3::createFunction()
<?php
function my_udf_md5($string) {
return md5($string);
}
$db = new SQLite3('mysqlitedb.db');
$db->createFunction('my_udf_md5', 'my_udf_md5');
var_dump($db->querySingle('SELECT my_udf_md5("test")'));
?>
Résultat de l'exemple ci-dessus est similaire à :
string(32) "098f6bcd4621d373cade4e832627b4f6"