(PECL ibm_db2 >= 1.1.1)
db2_server_info — Returns an object with properties that describe the DB2 database server
$connection
   )This function returns an object with read-only properties that return information about the IBM DB2, Cloudscape, or Apache Derby database server. The following table lists the database server properties:
| Property name | Return type | Description | 
|---|---|---|
| DBMS_NAME | string | The name of the database server to which you are connected. For DB2 servers this is a combination of DB2 followed by the operating system on which the database server is running. | 
| DBMS_VER | string | The version of the database server, in the form of a string "MM.mm.uuuu" where MM is the major version, mm is the minor version, and uuuu is the update. For example, "08.02.0001" represents major version 8, minor version 2, update 1. | 
| DB_CODEPAGE | int | The code page of the database to which you are connected. | 
| DB_NAME | string | The name of the database to which you are connected. | 
| DFT_ISOLATION | string | The default transaction isolation level supported by the server: 
 | 
| IDENTIFIER_QUOTE_CHAR | string | The character used to delimit an identifier. | 
| INST_NAME | string | The instance on the database server that contains the database. | 
| ISOLATION_OPTION | array | An array of the isolation options supported by the database server. The isolation options are described in the DFT_ISOLATION property. | 
| KEYWORDS | array | An array of the keywords reserved by the database server. | 
| LIKE_ESCAPE_CLAUSE | bool | TRUEif the database server supports the
       use of % and _ wildcard
       characters.FALSEif the database server does not
       support these wildcard characters. | 
| MAX_COL_NAME_LEN | int | Maximum length of a column name supported by the database server, expressed in bytes. | 
| MAX_IDENTIFIER_LEN | int | Maximum length of an SQL identifier supported by the database server, expressed in characters. | 
| MAX_INDEX_SIZE | int | Maximum size of columns combined in an index supported by the database server, expressed in bytes. | 
| MAX_PROC_NAME_LEN | int | Maximum length of a procedure name supported by the database server, expressed in bytes. | 
| MAX_ROW_SIZE | int | Maximum length of a row in a base table supported by the database server, expressed in bytes. | 
| MAX_SCHEMA_NAME_LEN | int | Maximum length of a schema name supported by the database server, expressed in bytes. | 
| MAX_STATEMENT_LEN | int | Maximum length of an SQL statement supported by the database server, expressed in bytes. | 
| MAX_TABLE_NAME_LEN | int | Maximum length of a table name supported by the database server, expressed in bytes. | 
| NON_NULLABLE_COLUMNS | bool | TRUEif the database server supports columns that can be
        defined as NOT NULL,FALSEif the database server does not support
        columns defined as NOT NULL. | 
| PROCEDURES | bool | TRUEif the database server supports the use of the CALL
        statement to call stored procedures,FALSEif the database
        server does not support the CALL statement. | 
| SPECIAL_CHARS | string | A string containing all of the characters other than a-Z, 0-9, and underscore that can be used in an identifier name. | 
| SQL_CONFORMANCE | string | The level of conformance to the ANSI/ISO SQL-92 specification offered by the database server: 
 | 
connection
     Specifies an active DB2 client connection.
   Returns an object on a successful call. Returns FALSE on failure.
  
Example #1 A db2_server_info() example
To retrieve information about the server, you must pass a valid database connection resource to db2_server_info().
<?php
$conn = db2_connect('sample', 'db2inst1', 'ibmdb2');
$server = db2_server_info( $conn );
if ($server) {
    echo "DBMS_NAME: ";                 var_dump( $server->DBMS_NAME );
    echo "DBMS_VER: ";                  var_dump( $server->DBMS_VER );
    echo "DB_CODEPAGE: ";               var_dump( $server->DB_CODEPAGE );
    echo "DB_NAME: ";                   var_dump( $server->DB_NAME );
    echo "INST_NAME: ";                 var_dump( $server->INST_NAME );
    echo "SPECIAL_CHARS: ";             var_dump( $server->SPECIAL_CHARS );
    echo "KEYWORDS: ";                  var_dump( sizeof($server->KEYWORDS) );
    echo "DFT_ISOLATION: ";             var_dump( $server->DFT_ISOLATION );
    echo "ISOLATION_OPTION: ";
    $il = '';
    foreach( $server->ISOLATION_OPTION as $opt )
    {
       $il .= $opt." ";
    }
    var_dump( $il );
    echo "SQL_CONFORMANCE: ";           var_dump( $server->SQL_CONFORMANCE );
    echo "PROCEDURES: ";                var_dump( $server->PROCEDURES );
    echo "IDENTIFIER_QUOTE_CHAR: ";     var_dump( $server->IDENTIFIER_QUOTE_CHAR );
    echo "LIKE_ESCAPE_CLAUSE: ";        var_dump( $server->LIKE_ESCAPE_CLAUSE );
    echo "MAX_COL_NAME_LEN: ";          var_dump( $server->MAX_COL_NAME_LEN );
    echo "MAX_ROW_SIZE: ";              var_dump( $server->MAX_ROW_SIZE );
    echo "MAX_IDENTIFIER_LEN: ";        var_dump( $server->MAX_IDENTIFIER_LEN );
    echo "MAX_INDEX_SIZE: ";            var_dump( $server->MAX_INDEX_SIZE );
    echo "MAX_PROC_NAME_LEN: ";         var_dump( $server->MAX_PROC_NAME_LEN );
    echo "MAX_SCHEMA_NAME_LEN: ";       var_dump( $server->MAX_SCHEMA_NAME_LEN );
    echo "MAX_STATEMENT_LEN: ";         var_dump( $server->MAX_STATEMENT_LEN );
    echo "MAX_TABLE_NAME_LEN: ";        var_dump( $server->MAX_TABLE_NAME_LEN );
    echo "NON_NULLABLE_COLUMNS: ";      var_dump( $server->NON_NULLABLE_COLUMNS );
    db2_close($conn);
}
?>
The above example will output:
DBMS_NAME: string(9) "DB2/LINUX" DBMS_VER: string(10) "08.02.0000" DB_CODEPAGE: int(1208) DB_NAME: string(6) "SAMPLE" INST_NAME: string(8) "db2inst1" SPECIAL_CHARS: string(2) "@#" KEYWORDS: int(179) DFT_ISOLATION: string(2) "CS" ISOLATION_OPTION: string(12) "UR CS RS RR " SQL_CONFORMANCE: string(7) "FIPS127" PROCEDURES: bool(true) IDENTIFIER_QUOTE_CHAR: string(1) """ LIKE_ESCAPE_CLAUSE: bool(true) MAX_COL_NAME_LEN: int(30) MAX_ROW_SIZE: int(32677) MAX_IDENTIFIER_LEN: int(18) MAX_INDEX_SIZE: int(1024) MAX_PROC_NAME_LEN: int(128) MAX_SCHEMA_NAME_LEN: int(30) MAX_STATEMENT_LEN: int(2097152) MAX_TABLE_NAME_LEN: int(128) NON_NULLABLE_COLUMNS: bool(true)