sqlite_udf_decode_binary
(PHP 5)
sqlite_udf_decode_binary -- Décode des données binaires, passées à une UDF SQLite
Description
string
sqlite_udf_decode_binary ( string data )
sqlite_udf_decode_binary() décode des données binaires,
qui auraient été encodées avec sqlite_udf_encode_binary() ou
sqlite_escape_string().
Vous devez appeler cette fonction sur les paramètres passés à votre UDF, si
vous devez manipuler des données binaires, car le codage binaire de PHP
va masquer le contenu original de la donnée.
PHP ne fait pas cette opération de codage/décodage automatiquement,
car cela réduirait considérablement les performances.
Exemple 1.
Exemple de fonction d'agrégation SQLite, compatible avec les
données binaires
<?php $data = array( 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine', 'ten' ); $db = sqlite_open(':memory:'); sqlite_query($db, "CREATE TABLE strings(a)"); foreach ($data as $str) { $str = sqlite_escape_string($str); sqlite_query($db, "INSERT INTO strings VALUES ('$str')"); }
function max_len_step(&$context, $string) { $string = sqlite_udf_decode_binary($string); if (strlen($string) > $context) { $context = strlen($string); } }
function max_len_finalize(&$context) { return $context; }
sqlite_create_aggregate($db, 'max_len', 'max_len_step', 'max_len_finalize');
var_dump(sqlite_array_query($db, 'SELECT max_len(a) from strings'));
?>
|
|
Voir aussi
sqlite_udf_encode_binary(),
sqlite_create_function() et
sqlite_create_aggregate().