• Main Page
  • Data Structures
  • Files
  • File List

pgsqlConnection.php

Go to the documentation of this file.
00001 <?php
00002 
00003 /**
00004  * Postgres database connection class
00005  *
00006  * @package objSQL
00007  * @version 2.1.0
00008  * @author MT Jordan <mtjo62@gmail.com>
00009  * @link http://objsql.sourceforge.net
00010  * @copyright 2004-2010 openSource Partners
00011  * @license LGPL
00012  * @revision $Id: pgsqlConnection.php,v 1.6 2008-01-30 21:37:05-05 mt_jordan Exp $
00013  */
00014 
00015 class pgsqlConnection
00016 {
00017     /**********************************************
00018      * Internal variables
00019      *********************************************/
00020 
00021     /**
00022      * Database connection object
00023      *
00024      * @access private
00025      * @var    mixed
00026      */
00027     private $objConnection;
00028 
00029     /**
00030      * Database connection information
00031      *
00032      * @access private
00033      * @var    array
00034      */
00035     private $objDatasource;
00036 
00037     /**********************************************
00038      * Class methods
00039      *********************************************/
00040     /**
00041      * Constructor
00042      *
00043      * @access public
00044      * @param  array $datasource
00045      */
00046     public function __construct( $datasource )
00047     {
00048         $this->objDatasource    = $datasource;
00049         $this->objDatasource[5] = ( array_key_exists( 5, $this->objDatasource ) && $this->objDatasource[5] ) ? true : false;
00050     }
00051 
00052     /**
00053      * Connect to database server
00054      *
00055      * @access public
00056      * @return mixed
00057      */
00058     public function objDbConnection()
00059     {
00060         $objStr = sprintf( 'host=%s dbname=%s user=%s password=%s', $this->objDatasource[1], $this->objDatasource[4], $this->objDatasource[2], $this->objDatasource[3] );
00061 
00062         $this->objConnection = ( $this->objDatasource[5] ) ? pg_pconnect( $objStr )
00063                                                            : pg_connect( $objStr );
00064 
00065         if ( !$this->objConnection )
00066             trigger_error( pg_last_error(), E_USER_WARNING );
00067 
00068         return $this->objConnection;
00069     }
00070 
00071     /**
00072      * Close connection to database server
00073      *
00074      * @access public
00075      * @return bool
00076      */
00077     public function objDbClose()
00078     {
00079         return pg_close( $this->objConnection );
00080     }
00081 
00082     /**
00083      * Return info on database server
00084      *
00085      * @access public
00086      * @return str
00087      */
00088     public function objServerVersion()
00089     {
00090         $objVer = pg_version( $this->objConnection );
00091 
00092         return $objVer['client'];
00093     }
00094 }
00095 
00096 ?>

Generated on Sat Jul 10 2010 15:14:39 for objSQL 2.1.0 by  doxygen 1.7.1