[doc-en] master: PHP 8.5 cleanup for ODBC documentation (#4870)
| From: | Calvin Buckley via GitHub | Date: | Tue, 06 Oct 2026 12:46:07 +0000 |
| Subject: | [doc-en] master: PHP 8.5 cleanup for ODBC documentation (#4870) | ||
| Groups: | php.doc.cvs | ||
| Request: | Send a blank email to doc-cvs+get-23814@lists.php.net to get a copy of this message | ||
Author: Calvin Buckley (NattyNarwhal)
Committer: GitHub (web-flow)
Pusher: lacatoire
Date: 2026-10-06T14:46:04+02:00
Commit: https://github.com/php/doc-en/commit/b7680573f83eee7f31c83deec7c58a5537467558
Raw diff: https://github.com/php/doc-en/commit/b7680573f83eee7f31c83deec7c58a5537467558.diff
PHP 8.5 cleanup for ODBC documentation (#4870)
* Remove refs to removed configure flags in ODBC
* Remove DBMaker ref, mention iODBC
* Rewrite the introduction
This is very ancient and implies a lot of things about PHP database
support that hasn't been true in a quarter century.
Also invert the guidance to use driver managers instead of linking
against drivers directly.
* remove 'you'
* Mention legacy pre-8.5 supported DBs
Moved into a new section.
Note that I didn't include Birdstep (dropped in 7.3) or Openlink
(dropped seemingly in PHP 5 or older), nor was ODBCRouter ever
documented (despite being dropped in 7.3 as well). I can add these if
needed.
* odbc_fetch_* exists unconditionally in 8.5
* unixODBC and iODBC are found via pkg-config
* simpara
* Apply review suggestions on ODBC cleanup
Mention --with-custom-odbc for user-defined drivers such as Sybase SQL
Anywhere instead of listing it as a directly supported database, and
drop the DIR argument of --with-iodbc, which takes none.
---------
Co-authored-by: lacatoire <la.catoire@gmail.com>
Changed paths:
M reference/uodbc/book.xml
M reference/uodbc/configure.xml
M reference/uodbc/functions/odbc-fetch-array.xml
M reference/uodbc/functions/odbc-fetch-object.xml
Diff:
diff --git a/reference/uodbc/book.xml b/reference/uodbc/book.xml
index 22939998c79e..95d575b182ee 100644
--- a/reference/uodbc/book.xml
+++ b/reference/uodbc/book.xml
@@ -10,32 +10,29 @@
<preface xml:id="intro.uodbc">
&reftitle.intro;
<simpara>
- In addition to normal ODBC support, the Unified ODBC functions in
- PHP allow you to access several databases that have borrowed the
- semantics of the ODBC API to implement their own API. Instead of
- maintaining multiple database drivers that were all nearly
- identical, these drivers have been unified into a single set of
- ODBC functions.
+ The ODBC extension allows using ODBC database drivers from
+ PHP, using the same functions in PHP for any driver.
</simpara>
<simpara>
- The following databases are supported by the Unified ODBC
- functions: <link xlink:href="&url.adabas;">Adabas D</link>,
+ The following drivers and driver managers have direct support:
<link xlink:href="&url.ibmdb2;">IBM DB2</link>,
- <link xlink:href="&url.iodbc;">iODBC</link>,
- <link xlink:href="&url.solid;">Solid</link>, and
- <link xlink:href="&url.sybase;">Sybase SQL Anywhere</link>.
+ <link xlink:href="&url.iodbc;">iODBC</link>, and
+ <link xlink:href="&url.unixodbc;">unixODBC</link>. A user-defined
+ driver, such as Sybase SQL Anywhere, can also be linked directly
+ via <literal>--with-custom-odbc</literal>.
+ </simpara>
+ <simpara>
+ Versions of PHP before 8.5 supported using these databases
+ directly: <link xlink:href="&url.adabas;">Adabas D</link>,
+ DBMaker, Empress, and <link xlink:href="&url.solid;">Solid</link>.
</simpara>
<note>
<simpara>
- With the exception of iODBC, there is no ODBC involved when
- connecting to the above databases. The functions that you
- use to speak natively to them just happen to share the same
- names and syntax as the ODBC functions. However, building PHP
- with iODBC support enables you to use any ODBC-compliant
- drivers with your PHP applications. More information on iODBC,
- is available at <link xlink:href="&url.iodbc;">www.iodbc.org</link>
- with the alternative unixODBC available at
- <link xlink:href="&url.unixodbc;">www.unixodbc.org</link>.
+ It is strongly recommended to use a driver manager like iODBC
+ or unixODBC with PHP. While a driver can be used directly with
+ the ODBC extension through building against it directly, a
+ driver manager provides better flexibility and compatibility.
+ On Windows, the system driver manager is always used.
</simpara>
</note>
</preface>
diff --git a/reference/uodbc/configure.xml b/reference/uodbc/configure.xml
index 0b684f365269..811256b2d03e 100644
--- a/reference/uodbc/configure.xml
+++ b/reference/uodbc/configure.xml
@@ -4,39 +4,6 @@
&reftitle.install;
<para>
<variablelist>
- <varlistentry xml:id="install.configure.with-adabas">
- <term>
- <option role="configure">--with-adabas[=DIR]</option>
- </term>
- <listitem>
- <para>
- Include Adabas D support. DIR is the Adabas base install directory,
- defaults to <filename>/usr/local</filename>.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry xml:id="install.configure.with-sapdb">
- <term>
- <option role="configure">--with-sapdb[=DIR]</option>
- </term>
- <listitem>
- <para>
- Include SAP DB support. DIR is SAP DB base install directory,
- defaults to <filename>/usr/local</filename>.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry xml:id="install.configure.with-solid">
- <term>
- <option role="configure">--with-solid[=DIR]</option>
- </term>
- <listitem>
- <para>
- Include Solid support. DIR is the Solid base install directory,
- defaults to <filename>/usr/local/solid</filename>.
- </para>
- </listitem>
- </varlistentry>
<varlistentry xml:id="install.configure.with-ibm-db2">
<term>
<option role="configure">--with-ibm-db2[=DIR]</option>
@@ -48,41 +15,6 @@
</para>
</listitem>
</varlistentry>
- <varlistentry xml:id="install.configure.with-empress">
- <term>
- <option role="configure">--with-empress[=DIR]</option>
- </term>
- <listitem>
- <para>
- Include Empress support. DIR is the Empress base install directory,
- defaults to <varname>$EMPRESSPATH</varname>. This
- option only supports Empress Version 8.60 and above.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry xml:id="install.configure.with-empress-bcs">
- <term>
- <option role="configure">--with-empress-bcs[=DIR]</option>
- </term>
- <listitem>
- <para>
- Include <literal>"Empress Local Access"</literal> support. DIR is the
Empress base
- install directory, defaults to <varname>$EMPRESSPATH</varname>.
- This option only supports Empress Version 8.60 and above.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry xml:id="install.configure.with-birdstep">
- <term>
- <option role="configure">--with-birdstep[=DIR]</option>
- </term>
- <listitem>
- <para>
- Include Birdstep support. DIR is the Birdstep base install directory,
- defaults to <filename>/usr/local/birdstep</filename>.
- </para>
- </listitem>
- </varlistentry>
<varlistentry xml:id="install.configure.with-custom-odbc">
<term>
<option role="configure">--with-custom-odbc[=DIR]</option>
@@ -104,24 +36,12 @@
</varlistentry>
<varlistentry xml:id="install.configure.with-iodbc">
<term>
- <option role="configure">--with-iodbc[=DIR]</option>
+ <option role="configure">--with-iodbc</option>
</term>
<listitem>
- <para>
- Include iODBC support. DIR is the iODBC base install directory,
- defaults to <filename>/usr/local</filename>.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry xml:id="install.configure.with-esoob">
- <term>
- <option role="configure">--with-esoob[=DIR]</option>
- </term>
- <listitem>
- <para>
- Include Easysoft OOB support. DIR is the OOB base install directory,
- defaults to <filename>/usr/local/easysoft/oob/client</filename>.
- </para>
+ <simpara>
+ Include iODBC support, found via pkg-config.
+ </simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="install.configure.with-unixodbc">
@@ -129,33 +49,10 @@
<option role="configure">--with-unixODBC[=DIR]</option>
</term>
<listitem>
- <para>
+ <simpara>
Include unixODBC support. DIR is the unixODBC base install directory,
- defaults to <filename>/usr/local</filename>.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry xml:id="install.configure.with-openlink">
- <term>
- <option role="configure">--with-openlink[=DIR]</option>
- </term>
- <listitem>
- <para>
- Include OpenLink ODBC support. DIR is the OpenLink base install directory,
- defaults to <filename>/usr/local</filename>. This is the same as iODBC.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry xml:id="install.configure.with-dbmaker">
- <term>
- <option role="configure">--with-dbmaker[=DIR]</option>
- </term>
- <listitem>
- <para>
- Include DBMaker support. DIR is the DBMaker base install directory,
- defaults to where the latest version of DBMaker is installed
- (such as <filename>/home/dbmaker/3.6</filename>).
- </para>
+ if not specified, defaults to finding it via pkg-config.
+ </simpara>
</listitem>
</varlistentry>
</variablelist>
@@ -164,6 +61,110 @@
Windows users must enable
<filename>php_odbc.dll</filename> in order to use this extension.
</simpara>
+ <section xml:id="odbc.installation.deprecated">
+ <title>Deprecated Installation Flags</title>
+ <para>
+ The following flags are no longer supported as of PHP 8.5:
+ <variablelist>
+ <varlistentry xml:id="install.configure.with-adabas">
+ <term>
+ <option role="configure">--with-adabas[=DIR]</option>
+ </term>
+ <listitem>
+ <simpara>
+ Include Adabas D support. DIR is the Adabas base install directory,
+ defaults to <filename>/usr/local</filename>.
+ </simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry xml:id="install.configure.with-dbmaker">
+ <term>
+ <option role="configure">--with-dbmaker[=DIR]</option>
+ </term>
+ <listitem>
+ <simpara>
+ Include DBMaker support. DIR is the DBMaker base install directory,
+ defaults to where the latest version of DBMaker is installed
+ (such as <filename>/home/dbmaker/3.6</filename>).
+ </simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry xml:id="install.configure.with-empress">
+ <term>
+ <option role="configure">--with-empress[=DIR]</option>
+ </term>
+ <listitem>
+ <simpara>
+ Include Empress support. DIR is the Empress base install directory,
+ defaults to <varname>$EMPRESSPATH</varname>. This
+ option only supports Empress Version 8.60 and above.
+ </simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry xml:id="install.configure.with-empress-bcs">
+ <term>
+ <option role="configure">--with-empress-bcs[=DIR]</option>
+ </term>
+ <listitem>
+ <simpara>
+ Include <literal>"Empress Local Access"</literal> support. DIR is the
Empress base
+ install directory, defaults to <varname>$EMPRESSPATH</varname>.
+ This option only supports Empress Version 8.60 and above.
+ </simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry xml:id="install.configure.with-esoob">
+ <term>
+ <option role="configure">--with-esoob[=DIR]</option>
+ </term>
+ <listitem>
+ <simpara>
+ Include Easysoft OOB support. DIR is the OOB base install directory,
+ defaults to <filename>/usr/local/easysoft/oob/client</filename>.
+ </simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry xml:id="install.configure.with-sapdb">
+ <term>
+ <option role="configure">--with-sapdb[=DIR]</option>
+ </term>
+ <listitem>
+ <simpara>
+ Include SAP DB support. DIR is SAP DB base install directory,
+ defaults to <filename>/usr/local</filename>.
+ </simpara>
+ </listitem>
+ </varlistentry>
+ <varlistentry xml:id="install.configure.with-solid">
+ <term>
+ <option role="configure">--with-solid[=DIR]</option>
+ </term>
+ <listitem>
+ <simpara>
+ Include Solid support. DIR is the Solid base install directory,
+ defaults to <filename>/usr/local/solid</filename>.
+ </simpara>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
+ <para>
+ The following flags are no longer supported as of PHP 7.3:
+ <variablelist>
+ <varlistentry xml:id="install.configure.with-birdstep">
+ <term>
+ <option role="configure">--with-birdstep[=DIR]</option>
+ </term>
+ <listitem>
+ <simpara>
+ Include Birdstep support. DIR is the Birdstep base install directory,
+ defaults to <filename>/usr/local/birdstep</filename>.
+ </simpara>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
+ </section>
</section>
<!-- Keep this comment at the end of the file
diff --git a/reference/uodbc/functions/odbc-fetch-array.xml
b/reference/uodbc/functions/odbc-fetch-array.xml
index 512e95b30280..46431717437e 100644
--- a/reference/uodbc/functions/odbc-fetch-array.xml
+++ b/reference/uodbc/functions/odbc-fetch-array.xml
@@ -78,15 +78,6 @@
</informaltable>
</refsect1>
- <refsect1 role="notes">
- &reftitle.notes;
- <note>
- <simpara>
- This function exists when compiled with DBMaker, IBM DB2 or UnixODBC support.
- </simpara>
- </note>
- </refsect1>
-
<refsect1 role="seealso">
&reftitle.seealso;
<para>
diff --git a/reference/uodbc/functions/odbc-fetch-object.xml
b/reference/uodbc/functions/odbc-fetch-object.xml
index fb2814a83d8b..253f0d1fe998 100644
--- a/reference/uodbc/functions/odbc-fetch-object.xml
+++ b/reference/uodbc/functions/odbc-fetch-object.xml
@@ -78,15 +78,6 @@
</informaltable>
</refsect1>
- <refsect1 role="notes">
- &reftitle.notes;
- <note>
- <simpara>
- This function exists when compiled with DBMaker, IBM DB2 or UnixODBC support.
- </simpara>
- </note>
- </refsect1>
-
<refsect1 role="seealso">
&reftitle.seealso;
<para>