1
0
mirror of https://github.com/php/doc-de.git synced 2026-03-24 23:32:10 +01:00
Files
archived-doc-de/reference/sqlite/functions/sqlite-udf-decode-binary.xml
2010-03-29 00:47:47 +00:00

141 lines
3.7 KiB
XML

<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: lapistano Status: ready -->
<refentry xml:id="function.sqlite-udf-decode-binary" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>sqlite_udf_decode_binary</refname>
<refpurpose>Dekodiert Binärdaten und reicht diese als Parameter weiter zu einer benutzerdefinierten Funktion (<acronym>UDF</acronym>)</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>string</type><methodname>sqlite_udf_decode_binary</methodname>
<methodparam><type>string</type><parameter>data</parameter></methodparam>
</methodsynopsis>
<para>
<function>sqlite_udf_decode_binary</function> dekodiert die Binärkodierung
der Parameter, die entweder mit <function>sqlite_udf_encode_binary</function>
oder <function>sqlite_escape_string</function> durchgeführt wurde.
</para>
<para>
Parameter, die an eine UDF übergeben wurden und Binärdaten enthalten könnten,
sollte mit dieser Funktion aufgerufen werden. Ansonsten würden die binären
Information durch die im PHP implementierte Kodierung in ihrer natürlichen
und nicht kodierten Form verändert werden.
</para>
<para>
PHP führt diese (De-)Kodieraufrufe nicht automatisch durch, da dieses die
Performance drastig beeinflussen würde.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
Die kodierte Zeichenkette, die dekodiert werden. Diese wurde entweder von
<function>sqlite_udf_encode_binary</function> oder
<function>sqlite_escape_string</function> erzeugt.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Die dekodierte Zeichenkette (<type>string</type>).
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Beispiel für eine binärsichere max_length Summenfunktion</title>
<programlisting role="php">
<![CDATA[
<?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'));
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>sqlite_udf_encode_binary</function></member>
<member><function>sqlite_create_function</function></member>
<member><function>sqlite_create_aggregate</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->