php实现比较全的数据库操作类


Posted in PHP onJune 18, 2015

本文实例讲述了php实现比较全的数据库操作类。分享给大家供大家参考。具体如下:

<?php
 class database
 {
  private $hostname;
  private $user;
  private $pass;
  private $dbname;
  private $linkflag;
  private $charset;
  function __construct()
  {
   $this->hostname="localhost";
   $this->user="root";
   $this->pass="111";
   $this->dbname="";
   $this->charset="utf8"; //gb2312 GBK utf8
   $this->linkflag=mysql_connect($this->hostname,$this->user,$this->pass);
   mysql_select_db($this->dbname,$this->linkflag) or die($this->error());
   mysql_query("set names ".$this->charset);
  }
  function __set($property_name,$value)
  {
   return $this->$property_name=$value;
  }
  function __get($property_name)
  {
   if(isset($this->$property_name))
   {
    return $this->$property_name;
   }
   else return null;
  }
  function __call($function_name, $args)
  {
    echo "<br><font color=#ff0000>你所调用的方法 $function_name 不存在</font><br>\n";
  }
  function query($sql)
  {
   $res=mysql_query($sql) or die($this->error());
   return $res;
  }
  function fetch_array($res)
  {
   return mysql_fetch_array($res);
  }
  function fetch_object($res)
  {
   return mysql_fetch_object($res);
  }
  function fetch_obj_arr($sql)
  {
   $obj_arr=array();
   $res=$this->query($sql);
   while($row=mysql_fetch_object($res))
   {
    $obj_arr[]=$row;
   }
   return $obj_arr;
  }
  function error()
  {
   if($this->linkflag)
   {
    return mysql_error($this->linkflag);
   }
   else return mysql_error();
  }
  function errno()
  {
   if($this->linkflag)
   {
    return mysql_errno($this->linkflag);
   }
   else return mysql_errno();
  }
  function affected_rows()
  {
   return mysql_affected_rows($this->linkflag);
  }
  function num_rows($sql)
  {
   $res=$this->execute($sql);
   return mysql_num_rows($res);
  }
  function num_fields($res)
  {
   return mysql_num_fields($res);
  }
  function insert_id()
  {
   $previous_id=mysql_insert_id($this->linkflag);
   return $previous_id;
  }
  function result($res,$row,$field=null)
  {
   if($field===null)
   {
    $res=mysql_result($res,$row);
   }
   else $res=mysql_result($res,$row,$field);
   return $res;
  }
  function version()
  {
   return mysql_get_server_info($this->linkflag);
  }
  function data_seek($res,$rowNum)
  {
   return mysql_data_seek($res,$rowNum);
  }
  function __destruct()
  {
   //mysql_close($this->linkflag);
  }
 }
?>

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

PHP 相关文章推荐
跟我学小偷程序之成功偷取首页(第三天)
Oct 09 PHP
测试您的 PHP 水平的题目
May 30 PHP
比较全的PHP 会话(session 时间设定)使用入门代码
Jun 05 PHP
php数组函数序列之array_key_exists() - 查找数组键名是否存在
Oct 29 PHP
深入Memcache的Session数据的多服务器共享详解
Jun 13 PHP
浅析PHP中的字符串编码转换(自动识别原编码)
Jul 02 PHP
php中url传递中文字符,特殊危险字符的解决方法
Aug 17 PHP
php实现的读取CSV文件函数示例
Feb 07 PHP
Laravel中encrypt和decrypt的实现方法
Sep 24 PHP
php删除一个路径下的所有文件夹和文件的方法
Feb 07 PHP
PHP实现的XXTEA加密解密算法示例
Aug 28 PHP
laravel 解决crontab不执行的问题
Oct 22 PHP
php文件操作相关类实例
Jun 18 #PHP
php身份证号码检查类实例
Jun 18 #PHP
PHP批量生成图片缩略图的方法
Jun 18 #PHP
基于php的CMS中展示文章类实例分析
Jun 18 #PHP
php实现的用户查询类实例
Jun 18 #PHP
php常用表单验证类用法实例
Jun 18 #PHP
php文件压缩之PHPZip类用法实例
Jun 18 #PHP
You might like
php ob_flush,flush在ie中缓冲无效的解决方法
2010/05/09 PHP
PHP获取栏目的所有子级和孙级栏目的ID号示例
2014/04/01 PHP
使用PHP生成二维码的方法汇总
2015/07/22 PHP
深入解析Laravel5.5中的包自动发现Package Auto Discovery
2017/09/13 PHP
bindParam和bindValue的区别以及在Yii2中的使用详解
2018/03/12 PHP
PHP排序算法之堆排序(Heap Sort)实例详解
2018/04/21 PHP
prototype 源码中文说明之 prototype.js
2006/09/22 Javascript
jquery 防止表单重复提交代码
2010/01/21 Javascript
javascript 定义新对象方法
2010/02/20 Javascript
js操作ajax返回的json的注意问题!
2010/02/23 Javascript
JS中怎样判断undefined(比较不错的方法)
2014/03/27 Javascript
JavaScript实现弹出模态窗体并接受传值的方法
2016/02/12 Javascript
JS实现简单的天数计算器完整实例
2017/04/28 Javascript
结合mint-ui移动端下拉加载实践方法总结
2017/11/08 Javascript
vue 将页面公用的头部组件化的方法
2017/12/18 Javascript
微信小程序发布新版本时自动提示用户更新的方法
2019/06/07 Javascript
VUE项目实现主题切换的多种方法
2020/11/26 Vue.js
[13:18]《一刀刀一天》之DOTA全时刻21:详解TI新赛制 A队再露獠牙
2014/06/24 DOTA
[58:12]Ti4第二日主赛事败者组 LGD vs iG 3
2014/07/21 DOTA
[01:20:30]OG vs LGD 2018国际邀请赛淘汰赛BO3 第四场 8.26
2018/08/30 DOTA
python SSH模块登录,远程机执行shell命令实例解析
2018/01/12 Python
Python爬虫beautifulsoup4常用的解析方法总结
2019/02/25 Python
python图片二值化提高识别率代码实例
2019/08/24 Python
解决keras,val_categorical_accuracy:,0.0000e+00问题
2020/07/02 Python
Python约瑟夫生者死者小游戏实例讲解
2021/01/04 Python
美国在线和移动免费会员制批发零售商:Boxed(移动端的Costco)
2020/01/02 全球购物
高中的职业生涯规划书
2013/12/28 职场文书
电子邮箱格式怎么写
2014/01/12 职场文书
教师个人自我鉴定
2014/02/08 职场文书
酒店采购员岗位职责
2014/03/14 职场文书
警校毕业生自我评价
2014/04/06 职场文书
学校党的群众路线教育实践活动制度建设计划
2014/11/03 职场文书
2015年教师师德师风承诺书
2015/04/28 职场文书
学校元旦晚会开场白
2015/05/29 职场文书
离职证明范本
2015/06/12 职场文书
python爬虫之爬取笔趣阁小说
2021/04/22 Python