Fix #45732: odbc.defaultlrl = 0 insufficiently documented

git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@350795 c90b9560-bf6c-de11-be94-00142212c4b1
This commit is contained in:
Christoph Michael Becker 2020-10-06 10:17:08 +00:00
parent 80872147aa
commit df4203dcc5
2 changed files with 19 additions and 19 deletions

View file

@ -13,20 +13,25 @@
<methodparam><type>int</type><parameter>mode</parameter></methodparam>
</methodsynopsis>
<para>
Enables handling of binary column data. ODBC SQL types affected are
Controls handling of binary column data. ODBC SQL types affected are
<literal>BINARY</literal>, <literal>VARBINARY</literal>, and
<literal>LONGVARBINARY</literal>.
The default mode can be set using the
<link linkend="ini.uodbc.defaultbinmode">uodbc.defaultbinmode</link> &php.ini; directive.
</para>
<para>
When binary SQL data is converted to character C data, each byte
When binary SQL data is converted to character C data (<constant>ODBC_BINMODE_CONVERT</constant>), each byte
(8 bits) of source data is represented as two ASCII characters.
These characters are the ASCII character representation of the
number in its hexadecimal form. For example, a binary
<literal>00000001</literal> is converted to
<literal>"01"</literal> and a binary <literal>11111111</literal>
is converted to <literal>"FF"</literal>.
</para>
<para>
While the handling of <literal>BINARY</literal> and <literal>VARBINARY</literal>
columns only depend on the binmode, the handling of <literal>LONGVARBINARY</literal>
columns also depends on the longreadlen as well:
<table>
<title>LONGVARBINARY handling</title>
<tgroup cols="3">
@ -53,11 +58,6 @@
<entry>0</entry>
<entry>passthru</entry>
</row>
<row>
<entry><constant>ODBC_BINMODE_PASSTHRU</constant></entry>
<entry>0</entry>
<entry>passthru</entry>
</row>
<row>
<entry><constant>ODBC_BINMODE_PASSTHRU</constant></entry>
<entry>>0</entry>
@ -80,6 +80,8 @@
<para>
If <function>odbc_fetch_into</function> is used, passthru means that an
empty string is returned for these columns.
If <function>odbc_result</function> is used, passthru means that the data are
sent directly to the client (i.e. printed).
</para>
</refsect1>
<refsect1 role="parameters">
@ -95,14 +97,6 @@
<para>
If <parameter>result_id</parameter> is <literal>0</literal>, the
settings apply as default for new results.
<note>
<simpara>
Default for <literal>longreadlen</literal> is <literal>4096</literal> and
<parameter>mode</parameter> defaults to
<literal>ODBC_BINMODE_RETURN</literal>. Handling of binary long
columns is also affected by <function>odbc_longreadlen</function>.
</simpara>
</note>
</para>
</listitem>
</varlistentry>
@ -128,6 +122,12 @@
</simpara>
</listitem>
</itemizedlist>
<note>
<simpara>
Handling of binary long
columns is also affected by <function>odbc_longreadlen</function>.
</simpara>
</note>
</para>
</listitem>
</varlistentry>

View file

@ -13,7 +13,7 @@
<methodparam><type>int</type><parameter>length</parameter></methodparam>
</methodsynopsis>
<para>
Enables handling of LONG and LONGVARBINARY columns.
Controls handling of <literal>LONG</literal>, <literal>LONGVARCHAR</literal> and <literal>LONGVARBINARY</literal> columns.
The default length can be set using the
<link linkend="ini.uodbc.defaultlrl">uodbc.defaultlrl</link> &php.ini; directive.
</para>
@ -35,8 +35,8 @@
<listitem>
<para>
The number of bytes returned to PHP is controlled by the parameter
length. If it is set to 0, Long column data is passed through to the
client.
length. If it is set to <literal>0</literal>, long column data is passed through to the
client (i.e. printed) when retrieved with <function>odbc_result</function>.
</para>
</listitem>
</varlistentry>
@ -53,7 +53,7 @@
&reftitle.notes;
<note>
<para>
Handling of LONGVARBINARY columns is also affected by
Handling of <literal>LONGVARBINARY</literal> columns is also affected by
<function>odbc_binmode</function>.
</para>
</note>