简单的pgsql pdo php操作类实现代码

2018-09-26 20:06

阅读:441

  核心代码:

   /* *pgsql类 */ class pgdb { public $pdo; public static $PDOInstance; public $config; public $data; public $filed = *; public $table; public $limit; public $order; public $where; public $left; const LOGIN = 7; const USER = 1; const GROUP = 2; const USERGROUP = 3; const LOG = 6; const WARING = 1; const ERROR = 2; const INFO = 0; public function __construct() { if (!self::$PDOInstance) { $this->config = json_decode(file_get_contents(./config/db.json), true); $config = $this->config; $host = $config[data_base][db_host]; $dbname = $config[data_base][db_name]; $port = $config[data_base][db_port]; $username = $config[data_base][db_user]; $password = $config[data_base][db_pwd]; if ($config[data_base][db_host] != localhost) { $hosturl = host=$host;; } try { self::$PDOInstance = new PDO(pgsql: . $hosturl . port=$port; . dbname=$dbname; , $username , $password , array( PDO::ATTR_PERSISTENT => true, ) ); } catch (Exception $ex) { header(Content-type: text/html; charset=utf-8); $error = 数据库初始化失败,已强制断开链接。<br />抓取到的异常栈如下:<br /><pre> . print_r($ex, true) . </pre>; die($error); } try { self::$PDOInstance->query(SET client_encoding=UTF-8;); self::$PDOInstance->setAttribute(PDO::ATTR_EMULATE_PREPARES, false); self::$PDOInstance->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch (Exception $exc) { $this->pdo=NULL; $doc = <<<DOC <!DOCTYPE html> <html> <head> <meta charset=UTF-8> <script src=layer/jquery-1.11.1.min.js></script> <script src=layer/layer.js></script> <head> <body> DOC; print $doc; $info=L(服务器变更请刷新); print(<script>layer.msg(.$info., {icon: 2,time: 30000},function(){location.reload();});</script>); print(</body></html>); exit(); } } $this->pdo = self::$PDOInstance; } }


评论


亲,登录后才可以留言!