sqlite_udf_decode_binary

(PHP 5)

sqlite_udf_decode_binary -- Decodifica los datos binarios que se pasan como parámetro a las funciones FDU (función definida por el usuario)

Descripción

string sqlite_udf_decode_binary ( string datos )

sqlite_udf_decode_binary() decodifica la codificación binaria aplicada por las funciones sqlite_udf_encode_binary() o sqlite_escape_string().

Se debe utilizar esta función para los parámetros que se pasan a las funciones FDU (función definida por el usuario) si éstos pueden contener datos binarios.

PHP no realiza este proceso de codificación/decodificación de forma automática, ya que esto podría penalizar seriamente el rendimiento de las aplicaciones.

Ejemplos

Ejemplo 1. Ejemplo de función max_length segura con datos binarios

<?php
$datos
= array(
   
'uno',
   
'dos',
   
'tres',
   
'cuatro',
   
'cinco',
   
'seis',
   
'siete',
   
'ocho',
   
'nueve',
   
'diez',
   );
$manejador_bd = sqlite_open(':memory:');
sqlite_query($manejador_bd, "CREATE TABLE tabla_cadenas(a)");
foreach (
$datos as $cadena) {
    
$cadena = sqlite_escape_string($cadena);
    
sqlite_query($manejador_bd, "INSERT INTO tabla_cadenas VALUES ('$cadena')");
}

function
max_longitud_temporal(&$contexto, $cadena)
{
    
$cadena = sqlite_udf_decode_binary($cadena);
    if (
strlen($cadena) > $contexto) {
        
$contexto = strlen($cadena);
    }
}

function
max_longitud_final(&$contexto)
{
    return
$contexto;
}

sqlite_create_aggregate($manejador_bd, 'max_longitud', 'max_longitud_temporal', 'max_longitud_final');

var_dump(sqlite_array_query($manejador_bd, 'SELECT max_longitud(a) from tabla_cadenas'));

?>

Ver también

sqlite_udf_encode_binary()
sqlite_create_function()
sqlite_create_aggregate()

Hosting by: hurra.com
Generated: 2007-01-26 18:00:50