Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ###### config.ini ######
- db_driver=mysql
- db_user=######
- db_password=#######
- [dsn]
- host=########
- port=3306
- dbname=###
- [db_options]
- PDO::MYSQL_ATTR_INIT_COMMAND=set names utf8
- [db_attributes]
- ATTR_ERRMODE=ERRMODE_EXCEPTION
- ############
- <?php
- class PDOFactory
- {
- public static function getInstance()
- {
- $ini = "config.ini" ;
- $parse = parse_ini_file ( $ini , true ) ;
- $driver = $parse [ "db_driver" ] ;
- $dsn = "${driver}:" ;
- $user = $parse [ "db_user" ] ;
- $password = $parse [ "db_password" ] ;
- $options = $parse [ "db_options" ] ;
- $attributes = $parse [ "db_attributes" ] ;
- foreach ( $parse [ "dsn" ] as $k => $v ) {
- $dsn .= "${k}=${v};" ;
- }
- $pdo = new PDO ( $dsn, $user, $password, $options ) ;
- foreach ( $attributes as $k => $v )
- {
- self :: $link -> setAttribute ( constant ( "PDO::{$k}" )
- , constant ( "PDO::{$v}" ) ) ;
- }
- return $pdo;
- }
- } ?>
Add Comment
Please, Sign In to add comment