`

(转)PHP操作Postgresql类

    博客分类:
  • php
阅读更多
原帖地址:http://yp.oss.org.cn/software/show_resource.php?resource_id=563

这个类封装了一些常用的函数,原帖里面还有事务处理的内容,以后再学习吧。


<?php
class pgsql {
private $linkid; // PostgreSQL连接标识符
private $host; // PostgreSQL服务器主机
private $port; // PostgreSQL服务器主机端口
private $user; // PostgreSQL用户
private $passwd; // PostgreSQL密码
private $db; // Postgresql数据库
private $result; // 查询的结果
private $querycount; // 已执行的查询总数
/* 类构造函数,用来初始化$host、$user、$passwd和$db字段。 */
function __construct($host, $port ,$db, $user, $passwd) {
$this->host = $host;
$this->port = $port;
$this->user = $user;
$this->passwd = $passwd;
$this->db = $db;
}
/* 连接Postgresql数据库 */
function connect(){
try{
$this->linkid = @pg_connect("host=$this->host port=$this->port dbname=$this->db
user=$this->user password=$this->passwd");
if (! $this->linkid)
throw new Exception("Could not connect to PostgreSQL server.");
}
catch (Exception $e) {
die($e->getMessage());
}
}
/* 执行数据库查询。 */
function query($query){
try{
$this->result = @pg_query($this->linkid,$query);
if(! $this->result)
throw new Exception("The database query failed.");
}
catch (Exception $e){
echo $e->getMessage();
}
$this->querycount++;
return $this->result;
}
/* 确定受查询所影响的行的总计。 */
function affectedRows(){
$count = @pg_affected_rows($this->linkid);
return $count;
}
/* 确定查询返回的行的总计。 */
function numRows(){
$count = @pg_num_rows($this->result);
return $count;
}
/* 将查询的结果行作为一个对象返回。 */
function fetchObject(){
$row = @pg_fetch_object($this->result);
return $row;
}
/* 将查询的结果行作为一个索引数组返回。 */
function fetchRow(){
$row = @pg_fetch_row($this->result);
return $row;
}
/* 将查询的结果行作为一个关联数组返回。 */
function fetchArray(){
$row = @pg_fetch_array($this->result);
return $row;
}
/* 返回在这个对象的生存期内执行的查询总数。这不是必须的,但是您也许会感兴趣。 */
function numQueries(){
return $this->querycount;
}
}
?>


测试的php一并放出,另外测试了下局域网内的另一台postgresql服务器,感觉查询速度还是很快的,查询postgregis数据也是杠杠滴。。

<?php
    include 'PGDB.php';
    $PG = new pgsql("192.168.1.167", "5432", "postgis", "postgres", "post");
	$PG->connect();
    
	if(!$PG)
	{
		$db_error = "无法连接到PostGreSQL数据库!";
		echo $db_error;	
	}
	else
	{
		echo "成功连接!";
		$query = "select name from ex where gid = 2";
		$result = $PG->query($query);
		$row = $PG->fetchRow();
		echo $row[0];
	}
?>
分享到:
评论

相关推荐

    PHP操作Postgresql封装类与应用完整实例

    本文实例讲述了PHP操作Postgresql封装类与应用。分享给大家供大家参考,具体如下: 这个类封装了一些常用的函数,原帖里面还有事务处理的内容,以后再学习吧。 类文件定义: &lt;?php class pgsql { private $link...

    PHP连接及操作PostgreSQL数据库的方法详解

    本文实例讲述了PHP连接及操作PostgreSQL数据库的方法。分享给大家供大家参考,具体如下: PostgreSQL扩展在默认情况下在最新版本的PHP 5.3.x中是启用的。 可以在编译时使用–without-pgsql来禁用它。仍然可以使用yum...

    postgresql手册+PHP手册

    PHP手册包涵PHP安装、配置、版本说明、函数介绍、数据库支持等等(中文版),另一个手册单独讲解PostgreSQL数据库操作。

    postgreSQL和PHP网站系统环境安装 PHP对数据库的增删改查

    postgreSQL和PHP网站系统环境安装 本课程的第一、二课  讲述如何在linux服务器安装... 讲述了如何使用PHP对PGSQL数据库进行增删改查操作,非常实用,让初学者更快掌握PHP对postgreSQL操作方法,提高初学者的兴趣。

    PHP实现从PostgreSQL数据库检索数据分页显示及根据条件查找数据示例

    主要介绍了PHP实现从PostgreSQL数据库检索数据分页显示及根据条件查找数据操作,涉及PHP操作PostgreSQL数据库的SQL条件查询、分页、显示等相关操作技巧,需要的朋友可以参考下

    php连接与操作PostgreSQL数据库的方法

    主要介绍了php连接与操作PostgreSQL数据库的方法,以实例形式较为详细的分析了php连接PostgreSQL数据库以及进行读取与增加、修改、删除等技巧,具有一定的参考借鉴价值,需要的朋友可以参考下

    PHP实现基于PDO扩展连接PostgreSQL对象关系数据库示例

    主要介绍了PHP实现基于PDO扩展连接PostgreSQL对象关系数据库,结合实例形式分析了php使用pdo连接PostgreSQL并执行简单sql语句的相关操作技巧,需要的朋友可以参考下

    postgresql使用1

    1. PostgreSQL简介 2. 安装 3. 物理存储 4. 配置 5. 简单使用 6. 图形界面管理工具PgAdminIII 7. 在PHP中操作Post

    Vagrant-PHP:使用(Nginx,PostgreSQL,MariaDB,PHP,...)的Vagrant设置

    操作系统: Ubuntu 18.04 LTS(Bionic Beaver)x64 D B : PostgreSQL玛丽亚数据库SQLite3 网络服务器 : Nginx的面板: phpMyAdmin 座舱(服务器的基于Web的界面) 其他: 带有一些扩展PHP 作曲家NPM的Node.js ...

    Discuz! 3.1.2 商业版

    依靠专门设计的数据库操作类实现数据库存取,目前提供 MySQL 和 PostgreSQL支持模块,具有专有错误处理模块,通过 Email 实时报告数据库错误. 数据结构更经过精心的设计,从字段到表的分配,索引的构建,都经过缜密的考虑...

    PHP开发实例大全(提高卷)pdf

    jQuery框架技术,PHP与在线编辑工具,PHP与多媒体技术,PHP与FPDF类库应用,报表与打印技术,网络、服务与服务器,邮件处理技术,XML操作技术,Web服务器与远程过程调用,LDAP(轻量级目录访问协议),PHP与WAP技术...

    各地图坐标系统( WGS84 GCJ02 BD09 )转换 php版本.zip

    此外,PHP还支持与其他数据库系统的连接,如PostgreSQL、SQLite、Oracle等,具有良好的数据库兼容性。 PHP拥有庞大的开发者社区和丰富的开源项目,如内容管理系统(CMS)WordPress、Drupal、Joomla,框架 Laravel、...

    用PHP和layui搭建的学生后台管理系统.zip

    此外,PHP还支持与其他数据库系统的连接,如PostgreSQL、SQLite、Oracle等,具有良好的数据库兼容性。 PHP拥有庞大的开发者社区和丰富的开源项目,如内容管理系统(CMS)WordPress、Drupal、Joomla,框架 Laravel、...

    php网络开发完全手册

    15.3 使用PHP操作MySQL数据库 240 15.3.1 数据库服务器的连接与断开 241 15.3.2 选择数据库 242 15.3.3 执行SQL语句 242 15.3.4 获得查询结果集中的记录数 243 15.3.5 获得结果集中的某一条记录 244 15.3.6 逐行获取...

    一个pdo方式处理数据库的工具类库

    PDO(PHP数据对象) 是一个轻量级的、具有兼容接口的PHP数据连接拓展,是一个PHP官方的PECL库,随PHP 5.1发布,需要PHP 5的面向对象支持,因而在更早的版本上无法使用。它所提供的数据接入抽象层,具有与具体数据库...

    毕设&课设&项目&实训-基于postgresql的图书销售系统,涵盖典型的SQL操作.zip

    包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。 包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、python...

Global site tag (gtag.js) - Google Analytics