Heim  >  Artikel  >  Backend-Entwicklung  >  简单的pgsql pdo php操作类

简单的pgsql pdo php操作类

WBOY
WBOYOriginal
2016-07-29 08:51:201572Durchsuche

/*
*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 = "数据库初始化失败,已强制断开链接。
抓取到的异常栈如下:

" . print_r($ex, true) . "
";
                        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;
                print $doc;
                $info=L('服务器变更请刷新');
                print("<script>layer.msg('".$info."', {icon: 2,time: 30000},function(){location.reload();});</script>");
                print('');
                exit();
                }
            }
        
            $this->pdo = self::$PDOInstance;
        }
}

以上就介绍了简单的pgsql pdo php操作类,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn