PHP  
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | my php.net 
search for in the  
<sqlite_single_querysqlite_udf_encode_binary>
Last updated: Mon, 16 Jul 2012

sqlite_udf_decode_binary

(PHP 5)

sqlite_udf_decode_binary -- Decode binary data passed as parameters to an UDF

说明

string sqlite_udf_decode_binary ( string data )

sqlite_udf_decode_binary() decodes the binary encoding that was applied to the parameter by either sqlite_udf_encode_binary() or sqlite_escape_string().

You must call this function on parameters passed to your UDF if you need them to handle binary data, as the binary encoding employed by PHP will obscure the content and of the parameter in its natural, non-coded form.

PHP does not perform this encode/decode operation automatically as it would severely impact performance if it did.

例子 1. binary-safe max_length aggregation function example

<?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'));

?>




<sqlite_single_querysqlite_udf_encode_binary>
 Last updated: Mon, 16 Jul 2012
 
Copyright © 2001-2005 The PHP Group
All rights reserved.
This unofficial mirror is operated at: http://manual.phpv.net/
Last updated: Thu Jul 7 19:13:47 2005 CST