sqlite_fonctions.php
SPIP, Système de publication pour l'internet
Copyright © avec tendresse depuis 2001 Arnaud Martin, Antoine Pitrou, Philippe Rivière, Emmanuel Saint-James
Ce programme est un logiciel libre distribué sous licence GNU/GPL.
Table of Contents
Functions
- _sqlite_init_functions() : false|void
- Déclarer à SQLite des fonctions spécifiques utilisables dans les requêtes SQL
- _sqlite_add_function() : mixed
- Déclare une fonction à SQLite
- _sqlite_func_ceil() : int
- Mapping de `CEIL` pour SQLite
- _sqlite_func_concat() : string
- Mapping de `CONCAT` pour SQLite
- _sqlite_func_dayofmonth() : string
- Mapping de `DAYOFMONTH` pour SQLite
- _sqlite_func_find_in_set() : int
- Mapping de `FIND_IN_SET` pour SQLite
- _sqlite_func_floor() : int
- Mapping de `FLOOR` pour SQLite
- _sqlite_func_if() : mixed
- Mapping de `IF` pour SQLite
- _sqlite_func_insert() : string
- Mapping de `INSERT` pour SQLite
- _sqlite_func_instr() : int
- Mapping de `INSTR` pour SQLite
- _sqlite_func_least() : int
- Mapping de `LEAST` pour SQLite
- _sqlite_func_greatest() : int
- Mapping de `GREATEST` pour SQLite
- _sqlite_func_left() : string
- Mapping de `LEFT` pour SQLite
- _sqlite_func_now() : string
- Mappnig de `NOW` pour SQLite
- _sqlite_func_month() : string
- Mapping de `MONTH` pour SQLite
- _sqlite_func_preg_replace() : string
- Mapping de `PREG_REPLACE` pour SQLite
- _sqlite_func_extraire_multi() : mixed
- Mapping pour `EXTRAIRE_MULTI` de SPIP pour SQLite
- _sqlite_func_rand() : float
- Mapping de `RAND` pour SQLite
- _sqlite_func_right() : string
- Mapping de `RIGHT` pour SQLite
- _sqlite_func_regexp_match() : bool
- Mapping de `REGEXP` pour SQLite
- _sqlite_func_date_format() : string
- Mapping de `DATE_FORMAT` pour SQLite
- _sqlite_func_strftime_format_converter() : string
- Convertit un format demandé pour DATE_FORMAT() de mysql en un format adapté à strftime() de php.
- _sqlite_func_to_days() : int
- Mapping de `DAYS` pour SQLite
- _sqlite_func_substring() : string
- Mapping de `SUBSTRING` pour SQLite
- _sqlite_timestampdiff() : int
- Mapping de `TIMESTAMPDIFF` pour SQLite
- _sqlite_func_unix_timestamp() : int
- Mapping de `UNIX_TIMESTAMP` pour SQLite
- _sqlite_func_year() : string
- Mapping de `YEAR` pour SQLite
- _sqlite_func_date() : string
- Version optimisée et memoizée de date() utilisé pour certains mapping SQLite
- _sqlite_func_vide() : mixed
- Mapping de `VIDE()` de SPIP pour SQLite
Functions
_sqlite_init_functions()
Déclarer à SQLite des fonctions spécifiques utilisables dans les requêtes SQL
_sqlite_init_functions(PDO|resource &$sqlite) : false|void
SQLite ne supporte nativement que certaines fonctions dans les requêtes SQL. Cependant, il permet d'étendre très facilement celles-ci en déclarant de nouvelles fonctions.
C'est ce qui est fait ici, en ajoutant des fonctions qui existent aussi dans d'autres moteurs, notamment en MySQL.
Parameters
- $sqlite : PDO|resource
-
Représente la connexion Sqlite
Tags
Return values
false|void_sqlite_add_function()
Déclare une fonction à SQLite
_sqlite_add_function(PDO &$sqlite, string &$f, array<string|int, mixed> &$r) : mixed
Parameters
- $sqlite : PDO
-
Représente la connexion Sqlite
- $f : string
-
Nom de la fonction à créer
- $r : array<string|int, mixed>
-
Tableau indiquant :
- le nom de la fonction à appeler,
- le nombre de paramètres attendus de la fonction (-1 = infini, par défaut)
Tags
_sqlite_func_ceil()
Mapping de `CEIL` pour SQLite
_sqlite_func_ceil(float $a) : int
Parameters
- $a : float
Return values
int_sqlite_func_concat()
Mapping de `CONCAT` pour SQLite
_sqlite_func_concat(array<string|int, string> ...$args) : string
Parameters
- $args : array<string|int, string>
Return values
string_sqlite_func_dayofmonth()
Mapping de `DAYOFMONTH` pour SQLite
_sqlite_func_dayofmonth(string $d) : string
Parameters
- $d : string
Tags
Return values
string_sqlite_func_find_in_set()
Mapping de `FIND_IN_SET` pour SQLite
_sqlite_func_find_in_set(string $num, string $set) : int
Parameters
- $num : string
- $set : string
Return values
int_sqlite_func_floor()
Mapping de `FLOOR` pour SQLite
_sqlite_func_floor(float $a) : int
Parameters
- $a : float
Return values
int_sqlite_func_if()
Mapping de `IF` pour SQLite
_sqlite_func_if(bool $bool, string|int|float $oui, string|int|float $non) : mixed
Parameters
- $bool : bool
- $oui : string|int|float
- $non : string|int|float
_sqlite_func_insert()
Mapping de `INSERT` pour SQLite
_sqlite_func_insert(string $s, int $index, int $longueur, string $chaine) : string
Retourne une chaine de caractères à partir d'une chaine dans laquelle "chaine" à été inserée à la position "index" en remplacant "longueur" caractères.
Parameters
- $s : string
- $index : int
- $longueur : int
- $chaine : string
Return values
string_sqlite_func_instr()
Mapping de `INSTR` pour SQLite
_sqlite_func_instr(string $s, string $search) : int
Parameters
- $s : string
- $search : string
Return values
int_sqlite_func_least()
Mapping de `LEAST` pour SQLite
_sqlite_func_least(array<string|int, int> ...$args) : int
Parameters
- $args : array<string|int, int>
Return values
int_sqlite_func_greatest()
Mapping de `GREATEST` pour SQLite
_sqlite_func_greatest(array<string|int, int> ...$args) : int
Parameters
- $args : array<string|int, int>
Return values
int_sqlite_func_left()
Mapping de `LEFT` pour SQLite
_sqlite_func_left(string $s, int $lenght) : string
Parameters
- $s : string
- $lenght : int
Return values
string_sqlite_func_now()
Mappnig de `NOW` pour SQLite
_sqlite_func_now([bool $force_refresh = false ]) : string
Parameters
- $force_refresh : bool = false
Return values
string_sqlite_func_month()
Mapping de `MONTH` pour SQLite
_sqlite_func_month(string $d) : string
Parameters
- $d : string
Tags
Return values
string_sqlite_func_preg_replace()
Mapping de `PREG_REPLACE` pour SQLite
_sqlite_func_preg_replace(string $quoi, string $cherche, string $remplace) : string
Parameters
- $quoi : string
- $cherche : string
- $remplace : string
Return values
string_sqlite_func_extraire_multi()
Mapping pour `EXTRAIRE_MULTI` de SPIP pour SQLite
_sqlite_func_extraire_multi(string $quoi, string $lang) : mixed
Extrait une langue d'un texte
Parameters
- $quoi : string
-
le texte contenant ou non un multi
- $lang : string
-
la langue a extraire
Tags
_sqlite_func_rand()
Mapping de `RAND` pour SQLite
_sqlite_func_rand() : float
Return values
float_sqlite_func_right()
Mapping de `RIGHT` pour SQLite
_sqlite_func_right(string $s, int $length) : string
Parameters
- $s : string
- $length : int
Return values
string_sqlite_func_regexp_match()
Mapping de `REGEXP` pour SQLite
_sqlite_func_regexp_match(string $cherche, string $quoi) : bool
Parameters
- $cherche : string
- $quoi : string
Return values
bool_sqlite_func_date_format()
Mapping de `DATE_FORMAT` pour SQLite
_sqlite_func_date_format(string $date, string $conv) : string
Transforme un un appel à DATE_FORMAT() via strftime de PHP, mais les motifs de remplacements ne sont pas toujours identiques. On essaie de les contertir.
Parameters
- $date : string
- $conv : string
Return values
string_sqlite_func_strftime_format_converter()
Convertit un format demandé pour DATE_FORMAT() de mysql en un format adapté à strftime() de php.
_sqlite_func_strftime_format_converter(string $conv) : string
Certains paramètres ne correspondent pas et doivent être remplacés, d'autres n'ont tout simplement pas d'équivalent dans strftime : dans ce cas là on loggue, car il y a de grandes chances que le résultat soit inadapté.
Parameters
- $conv : string
Return values
string_sqlite_func_to_days()
Mapping de `DAYS` pour SQLite
_sqlite_func_to_days(string $d) : int
Nombre de jour entre 0000-00-00 et $d
Parameters
- $d : string
Tags
Return values
int_sqlite_func_substring()
Mapping de `SUBSTRING` pour SQLite
_sqlite_func_substring(string $string, int $start[, int $len = null ]) : string
Parameters
- $string : string
- $start : int
- $len : int = null
Return values
string_sqlite_timestampdiff()
Mapping de `TIMESTAMPDIFF` pour SQLite
_sqlite_timestampdiff(string $unit, string $date1, string $date2) : int
Calcul de la difference entre 2 timestamp, exprimes dans l'unite fournie en premier argument
Parameters
- $unit : string
- $date1 : string
- $date2 : string
Tags
Return values
int_sqlite_func_unix_timestamp()
Mapping de `UNIX_TIMESTAMP` pour SQLite
_sqlite_func_unix_timestamp(string $d) : int
Parameters
- $d : string
Return values
int_sqlite_func_year()
Mapping de `YEAR` pour SQLite
_sqlite_func_year(string $d) : string
Parameters
- $d : string
Tags
Return values
string_sqlite_func_date()
Version optimisée et memoizée de date() utilisé pour certains mapping SQLite
_sqlite_func_date(string $quoi, int $d) : string
Parameters
- $quoi : string
-
format : Y, m, ou d
- $d : int
-
timestamp
Tags
Return values
string_sqlite_func_vide()
Mapping de `VIDE()` de SPIP pour SQLite
_sqlite_func_vide() : mixed