php面象对象数据库操作类实例

 更新时间:2014年12月02日 09:29:20   投稿:shichen2014  
这篇文章主要介绍了php面象对象数据库操作类,以实例形式讲述了通过面向对象封装数据库操作的技巧,非常具有实用价值,需要的朋友可以参考下

本文实例讲述了php面象对象数据库操作类。分享给大家供大家参考。

具体实现代码如下:

复制代码 代码如下:
//此处构造一个数据库操作类,封装所有数据库操作
//可以扩展便于后台管理程序的使用
Class MySQLDB 

   var $host; 
   var $user; 
   var $passwd; 
   var $database;
   var $conn; 
 
   //利用构造函数实现变量初始化 
   //同时连接数据库操作
   function MySQLDB($host,$user,$password,$database) 
   { 
      $this->host = $host; 
      $this->user = $user; 
      $this->passwd = $password; 
      $this->database = $database; 
      $this->conn=mysql_connect($this->host, $this->user,$this->passwd) or 
     die("Could not connect to $this->host"); 
      mysql_select_db($this->database,$this->conn) or 
     die("Could not switch to database $this->database"); 
   } 
 
   //该函数用来关闭数据库连接
   function Close() 
   { 
      MySQL_close($this->conn); 
   } 
 
   //该函数实现数据库查询操作
   function Query($queryStr) 
   { 
      $res =Mysql_query($queryStr, $this->conn) or 
      die("Could not query database"); 
      return $res; 
   } 
 
   //该函数返回记录集
   function getRows($res) 
   { 
      $rowno = 0; 
      $rowno = MySQL_num_rows($res); 
      if($rowno>0) 
      { 
         for($row=0;$row<$rowno;$row++ ) 
         { 
            $rows[$row]=MySQL_fetch_array($res);
            //本来为MySQL_fetch_row,但是不能以数组的方式来提取,只能用索引
            //这样可以用索引和名称,更为方便
         } 
         return $rows; 
      } 
    } 
 
    //该函数取回数据库记录数
    function getRowsNum($res) 
    { 
       $rowno = 0; 
       $rowno = mysql_num_rows($res); 
       return $rowno;
    } 
 
 //该函数返回数据库表字段数
 function getFieldsNum($res)
 {
    $fieldno = 0;
    $fieldno = mysql_num_fields($res);
    return $fieldno;
 }
 
 //该函数返回数据库表字段名称集
 function getFields($res)
 {
      $fno = $this->getFieldsNum($res);
      if($fno>0) 
      { 
         for($i=0;$i<$fno;$i++ ) 
         { 
            $fs[$i]=MySQL_field_name($res,$i);//取第i个字段的名称
         } 
         return $fs;
      } 
 }

 
//使用时直接require该文件,然后实例化:
 
$SqlDB = new MySQLDB("localhost","root","root","testdb");
 
$sql = "select * from tableX...";
 
$result = $SqlDB->Query($sql);//查询
 
$rs = $SqlDB->getRows($result);//获得记录集
 
$num = $SqlDB->getRowsNum($result);//获得记录数
 
...剩下的操作就是循环取值,
 
for($i=0;$i<$num;$i++){
   echo($rs[$i]["字段名"]);
}
 
...

最后不要忘记关闭数据路连接
复制代码 代码如下:
$SqlDB->Close();
当然这句可以不要,php会自动注销!但是这样能够养成一个好的习惯,最好还是加上!其他自己类推。

希望本文所述对大家的PHP程序设计有所帮助。

相关文章

  • 自己在做项目过程中学到的PHP知识收集

    自己在做项目过程中学到的PHP知识收集

    以前没学过PHP,最近刚好一个项目需要用到,我就决定一边学一边做PHP
    2012-08-08
  • php生成图片缩略图功能示例

    php生成图片缩略图功能示例

    这篇文章主要介绍了php生成图片缩略图功能,结合完整实例形式分析了php缩略图生成的详细步骤与相关实现技巧,需要的朋友可以参考下
    2017-02-02
  • 基于PHP文件操作的详细诠释

    基于PHP文件操作的详细诠释

    本篇文章是对PHP中的文件操作进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • PHP+MYSQL会员系统的开发实例教程

    PHP+MYSQL会员系统的开发实例教程

    这篇文章主要介绍了PHP+MYSQL会员系统的开发实例教程,通过一个完整的会员系统开发,进一步加深对PHP+MySQL程序设计流程的认识,需要的朋友可以参考下
    2014-08-08
  • PHP中你可能忽略的性能优化利器:生成器

    PHP中你可能忽略的性能优化利器:生成器

    性能优化是我们开发中必不可少的一部分,下面这篇文章主要给大家介绍了关于PHP中你可能忽略的性能优化利器:生成器的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。
    2017-12-12
  • PHP实现求连续子数组最大和问题2种解决方法

    PHP实现求连续子数组最大和问题2种解决方法

    这篇文章主要介绍了PHP实现求连续子数组最大和问题2种解决方法,涉及php针对数组的遍历、判断、运算等相关操作技巧,需要的朋友可以参考下
    2017-12-12
  • PHPTree——php快速生成无限级分类

    PHPTree——php快速生成无限级分类

    在开发中经常需要用到树形数据,比如无限多级分类,就是典型的树形结构。这里面的算法,用到了递归思想,为了简化开发过程,我编写了一个工具来提升开发效率,需要的朋友可以参考下
    2018-03-03
  • php 模拟POST提交的2种方法详解

    php 模拟POST提交的2种方法详解

    本篇文章是对php模拟POST提交的2种方法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • php微信公众平台开发类实例

    php微信公众平台开发类实例

    这篇文章主要介绍了php微信公众平台开发类,实例分析了针对微信消息的响应、回复、编码等相关技巧,非常具有实用价值,需要的朋友可以参考下
    2015-04-04
  • php中去除所有js,html,css代码

    php中去除所有js,html,css代码

    php中去除所有js,html,css代码,方便php的小偷采集程序的制作。
    2010-10-10

最新评论