简单的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脚本的10个技巧(4)
Oct 09 PHP
如何在PHP中进行身份认证
Oct 09 PHP
php 深入理解strtotime函数的使用详解
May 23 PHP
解析Linux下Varnish缓存的配置优化
Jun 20 PHP
浅析PHP中strlen和mb_strlen的区别
Aug 31 PHP
php判断对象是派生自哪个类的方法
Jun 20 PHP
详解PHP错误日志的获取方法
Jul 20 PHP
php防止用户重复提交表单
Nov 02 PHP
PHP JWT初识及其简单示例
Oct 10 PHP
PHP PDOStatement::rowCount讲解
Feb 01 PHP
php设计模式之中介者模式分析【星际争霸游戏案例】
Mar 23 PHP
PHP代码覆盖率统计详解
Jul 22 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
学习使用curl采集curl使用方法
2012/01/11 PHP
浅析虚拟主机服务器php fsockopen函数被禁用的解决办法
2013/08/07 PHP
PHP中set_include_path()函数相关用法分析
2016/07/18 PHP
PHP格式化显示时间date()函数代码
2018/10/03 PHP
详解提高使用Java反射的效率方法
2019/04/29 PHP
js使用函数绑定技术改变事件处理程序的作用域
2011/12/26 Javascript
js中eval详解
2012/03/30 Javascript
JSON中双引号的轮回使用过程中一定要小心
2014/03/05 Javascript
浅谈JavaScript数据类型及转换
2015/02/28 Javascript
JavaScript字符串对象(string)基本用法示例
2017/01/18 Javascript
js eval函数使用,js对象和字符串互转实例
2017/03/06 Javascript
Vue组件tree实现树形菜单
2017/04/13 Javascript
VueJs单页应用实现微信网页授权及微信分享功能示例
2017/07/26 Javascript
jQuery实现点击下拉框中的值累加到文本框中的方法示例
2017/10/28 jQuery
如何快速解决JS或Jquery ajax异步跨域的问题
2018/01/08 jQuery
详解vue移动端日期选择组件
2018/02/22 Javascript
vue-i18n结合Element-ui的配置方法
2019/05/20 Javascript
javascript关于“时间”的一次探索
2019/07/24 Javascript
Vue3.0数据响应式原理详解
2019/10/09 Javascript
Vue 监听元素前后变化值实例
2020/07/29 Javascript
Vue开发中常见的套路和技巧总结
2020/11/24 Vue.js
Python help()函数用法详解
2014/03/11 Python
python读取浮点数和读取文本文件示例
2014/05/06 Python
在Python的Flask框架中实现单元测试的教程
2015/04/20 Python
详解Python pygame安装过程笔记
2017/06/05 Python
python中ASCII码字符与int之间的转换方法
2018/07/09 Python
在python 中实现运行多条shell命令
2019/01/07 Python
python之生产者消费者模型实现详解
2019/07/27 Python
详解Python的三种拷贝方式
2020/02/11 Python
如何查看Django ORM执行的SQL语句的实现
2020/04/20 Python
Python实现JS解密并爬取某音漫客网站
2020/10/23 Python
您的健身减肥和健康饮食专家:vitafy
2017/06/06 全球购物
大学生军训自我鉴定范文
2014/09/18 职场文书
批评与自我批评范文
2014/10/15 职场文书
高考升学宴主持词
2019/06/21 职场文书
Python进度条的使用
2021/05/17 Python