PDO::sqliteCreateCollation
Enregistre une fonction PHP ou définie par l'utilisateur pour l'utiliser comme une fonction de collecte dans les requêtes SQL.
&reftitle.description;
public boolPDO::sqliteCreateCollation
stringname
callablecallback
&warn.experimental.func;
&reftitle.parameters;
name
Nom de la fonction de collecte SQL à créer ou à re-définir
callback
Le nom d'une fonction PHP ou définie par l'utilisateur à appliquer comme fonction de
rappel, définissant le comportement de la collecte. Elle doit accepter deux chaînes et
retourner comme le fait la fonction strcmp(), i.e. elle doit retourner
-1, 1, ou 0 si la première chaîne trie avant, après ou pareil que la seconde.
Cette fonction doit être définie comme ceci :
intcollation
stringstring1
stringstring2
&reftitle.returnvalues;
&return.success;
&reftitle.examples;
Exemple avec PDO::sqliteCreateCollation
exec("CREATE TABLE test (col1 string)");
$db->exec("INSERT INTO test VALUES ('a1')");
$db->exec("INSERT INTO test VALUES ('a10')");
$db->exec("INSERT INTO test VALUES ('a2')");
$db->sqliteCreateCollation('NATURAL_CMP', 'strnatcmp');
foreach ($db->query("SELECT col1 FROM test ORDER BY col1") as $row) {
echo $row['col1'] . "\n";
}
echo "\n";
foreach ($db->query("SELECT col1 FROM test ORDER BY col1 COLLATE NATURAL_CMP") as $row) {
echo $row['col1'] . "\n";
}
?>
]]>
&example.outputs;