Advertisement
Guest User

Untitled

a guest
Aug 6th, 2017
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.44 KB | None | 0 0
  1. public function connect( $driver, $params )
  2.            {
  3.                /**
  4.                 * Checks if User PHP Server have PDO Extension Loaded,
  5.                 * If not , Throw a new LogicException Without Message
  6.                 */
  7.                if(!extension_loaded('PDO')){
  8.                    throw new LogicException();
  9.                }
  10.                   if(!isset( $driver )){
  11.                       if( isset($params['driver']) ){
  12.                           $driver = $params['driver'];
  13.                       }else{
  14.                           throw new ErrorException('E_NO_DRIVER Loaded, Can\'t Do Connection Database');
  15.                       }
  16.                   }
  17.                   unset($params['driver']);
  18.                   switch( $driver ){
  19.                      
  20.                       // MySQL Database Driver
  21.                       case self::mysql:
  22.                           $this->db = new mysql( $params );
  23.                       break;
  24.  
  25.                       // PgSQL Database Driver
  26.                       case self::pgsql:
  27.                           $this->db = new pgsql( $params );
  28.                       break;
  29.  
  30.                       // ODBC Database Support
  31.                       case self::odbc:
  32.                           $this->db = new odbc( $params );
  33.                       break;
  34.  
  35.                       // SQLite Database Support
  36.                       case self::sqlite:
  37.                           $this->db = new sqlite( $params );
  38.                       break;
  39.  
  40.               // Oracle database support
  41.               case self::oracle:
  42.               $this->db = new oracle( $params );
  43.               break;
  44.  
  45.                          /**
  46.                           * As Default , Unexpected Driver ( Not Supported Driver )
  47.                           * Or Not a Existent PDO Driver, Throw new Exception
  48.                           */
  49.                            default:
  50.                                throw new Exception('Driver of You Trying To Use\Connect Is Not Supported');
  51.                            break;
  52.                   }
  53.                   /**
  54.                    * Set Attributes to PDO Object
  55.                    * @method: instance -> method [ setAttribute ]
  56.                    */
  57.                   $this->db->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
  58.                   $this->db->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE,PDO::FETCH_ASSOC);
  59.                   $this->db->setAttribute(PDO::ATTR_TIMEOUT, 0);
  60.            }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement