首页 > 开发 > PHP > 正文

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

2024-05-04 22:53:02
字体:
来源:转载
供稿:网友

核心代码:

/**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;  }}

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表