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程序设计有所帮助。