oci_pconnect
(PHP 5, PECL oci8:1.1-1.2.4)
oci_pconnect — Connect to an Oracle database using a persistent connection
Description
resource oci_pconnect
( string $username
, string $password
[, string $db
[, string $charset
[, int $session_mode
]]] )
Persistent connections are cached and re-used between requests, resulting
in reduced overhead on each page load; a typical PHP application will have
a single persistent connection open against an Oracle server per Apache
child process (or PHP FastCGI/CGI process). See the Persistent Database
Connections section for more information.
Parameters
-
username
-
The Oracle user name.
-
password
-
The password for username
.
-
db
-
This optional parameter can either contain the name of the local
Oracle instance or the name of the entry in
tnsnames.ora.
If the not specified, PHP uses environment variables
ORACLE_SID and TWO_TASK to
determine the name of local Oracle instance and location of
tnsnames.ora accordingly.
-
charset
-
Using Oracle server version 9.2 and greater, you can
indicate charset
by parameter, which will be used in the new
connection. If you're using Oracle server < 9.2, this parameter will be ignored
and the NLS_LANG environment variable will be used instead.
-
session_mode
-
This parameter is available since version 1.1 and accepts the
following values: OCI_DEFAULT,
OCI_SYSOPER and OCI_SYSDBA.
If either OCI_SYSOPER or
OCI_SYSDBA were specified, this function will try
to establish privileged connection using external credentials.
Privileged connections are disabled by default. To enable them you
need to set oci8.privileged_connect
to On.
Return Values
Returns a connection identifier or FALSE on error.
Notes
Note:
Starting with version 1.1 of the oci8 extension, the lifetime and
maximum amount of persistent Oracle connections can be tuned by setting
the following configuration values: oci8.persistent_timeout,
oci8.ping_interval and
oci8.max_persistent.
Note:
If you're using PHP with Oracle Instant Client, you can use easy connect
naming method described here:
» http://download-west.oracle.com/docs/cd/B12037_01/network.101/b10775/naming.htm#i498306.
Basically this means you can specify "//db_host[:port]/database_name"
as database name. But if you want to use the old way of naming you
must set either ORACLE_HOME or
TNS_ADMIN.
Note:
In PHP versions before 5.0.0 you must use ociplogon() instead.
This name still can be used, it was left as alias of
oci_pconnect() for downwards compatability.
This, however, is deprecated and not recommended.