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


Posted in PHP onAugust 25, 2016

核心代码:

/*
*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;
  }
}
PHP 相关文章推荐
PHP初学入门
Nov 19 PHP
写php分页时出现的Fatal error的解决方法
Apr 18 PHP
使用ThinkPHP自带的Http类下载远程图片到本地的实现代码
Aug 02 PHP
初步介绍PHP扩展开发经验分享
Sep 06 PHP
php while循环控制的简单实例
May 30 PHP
php的api数据接口书写实例(推荐)
Sep 22 PHP
ThinkPHP5实现作业管理系统中处理学生未交作业与已交作业信息的方法
Nov 12 PHP
yii 2.0中表单小部件的使用方法示例
May 23 PHP
PHP实现求两个字符串最长公共子串的方法示例
Nov 17 PHP
php实现对文件压缩简单的方法
Sep 29 PHP
phpstorm激活码2020附使用详细教程
Sep 25 PHP
详解php中流行的rpc框架
May 29 PHP
php mongodb操作类 带几个简单的例子
Aug 25 #PHP
php flush无效,IIS7下php实时输出的方法
Aug 25 #PHP
php 的反射详解及示例代码
Aug 25 #PHP
php 输入输出流详解及示例代码
Aug 25 #PHP
PHP 输出缓冲控制(Output Control)详解
Aug 25 #PHP
PHP中利用sleep函数实现定时执行功能实现代码
Aug 25 #PHP
PHP sleep()函数, usleep()函数
Aug 25 #PHP
You might like
《雄兵连》《烈阳天道》真的来了
2020/07/13 国漫
PHP提示Notice: Undefined variable的解决办法
2012/11/24 PHP
深入php多态的实现详解
2013/06/09 PHP
PHP获取和操作配置文件php.ini的几个函数介绍
2013/06/24 PHP
解析centos中Apache、php、mysql 默认安装路径
2013/06/25 PHP
PHP 7.1新特性的汇总介绍
2016/12/16 PHP
URL编码转换,escape() encodeURI() encodeURIComponent()
2006/12/27 Javascript
js 代码集(学习js的朋友可以看下)
2009/07/22 Javascript
纯Javascript实现Windows 8 Metro风格实现
2013/10/15 Javascript
Js参数值中含有单引号或双引号问题的解决方法
2013/11/06 Javascript
open 动态修改img的onclick事件示例代码
2013/11/13 Javascript
jQuery中复合属性选择器用法实例
2014/12/31 Javascript
jQuery实现tag便签去重效果的方法
2015/01/20 Javascript
Redis基本知识、安装、部署、配置笔记
2015/03/05 Javascript
jQuery实现提示密码强度的代码
2015/07/15 Javascript
JavaScript计算某一天是星期几的方法
2015/08/05 Javascript
jQuery+CSS实现滑动的标签分栏切换效果
2015/12/17 Javascript
深入理解JavaScript中的浮点数
2016/05/18 Javascript
走进javascript——不起眼的基础,值和分号
2017/02/24 Javascript
jQuery实现的页面弹幕效果【测试可用】
2018/08/17 jQuery
基于vue中对鼠标划过事件的处理方式详解
2018/08/22 Javascript
node+express框架中连接使用mysql(经验总结)
2018/11/10 Javascript
vue 中的动态传参和query传参操作
2020/11/09 Javascript
在Python的Flask中使用WTForms表单框架的基础教程
2016/06/07 Python
Python建立Map写Excel表实例解析
2018/01/17 Python
Python实现计算圆周率π的值到任意位的方法示例
2018/05/08 Python
Python 实现Windows开机运行某软件的方法
2018/10/14 Python
python如何制作英文字典
2019/06/25 Python
python中update的基本使用方法详解
2019/07/17 Python
pytorch实现特殊的Module--Sqeuential三种写法
2020/01/15 Python
医学生实习自我鉴定
2013/09/27 职场文书
大学生个人总结的自我评价
2013/10/05 职场文书
试用期转正鉴定评语
2014/01/27 职场文书
安全生产计划书
2014/05/04 职场文书
付款承诺函范文
2015/01/21 职场文书
解决pycharm下载库时出现Failed to install package的问题
2021/09/04 Python