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 相关文章推荐
php 获取完整url地址
Dec 20 PHP
php笔记之:有规律大文件的读取与写入的分析
Apr 26 PHP
PHP生成指定长度随机数最简洁的方法
Jul 14 PHP
PHP随机生成唯一HASH值自定义函数
Apr 20 PHP
php为字符串前后添加指定数量字符的方法
May 04 PHP
php实现XML和数组的相互转化功能示例
Feb 08 PHP
PHP实现电商订单自动确认收货redis队列
May 17 PHP
ThinkPHP框架表单验证操作方法
Jul 19 PHP
thinkPHP+mysql+ajax实现的仿百度一下即时搜索效果详解
Jul 15 PHP
Laravel 6 将新增为指定队列任务设置中间件的功能
Aug 06 PHP
thinkphp5框架结合mysql实现微信登录和自定义分享链接与图文功能示例
Aug 13 PHP
关于laravel框架中的常用目录路径函数
Oct 23 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
终于听上了直流胆调频
2021/03/02 无线电
php获得当前的脚本网址
2007/12/10 PHP
《PHP编程最快明白》第三讲:php数组
2010/11/01 PHP
详谈php中 strtr 和 str_replace 的效率问题
2017/05/14 PHP
PHP7数组的底层实现示例
2019/08/25 PHP
Extjs在exlipse中设置自动提示的方法
2010/04/07 Javascript
基于jquery封装的一个js分页
2011/11/15 Javascript
div浮层,滚动条移动,位置保持不变的4种方法汇总
2013/12/11 Javascript
百度判断手机终端并自动跳转js代码及使用实例
2014/06/11 Javascript
javascript学习笔记(四)function函数部分
2014/09/30 Javascript
基于jquery的手风琴图片展示效果实现方法
2014/12/16 Javascript
JS实现自动固定顶部的悬浮菜单栏效果
2015/09/16 Javascript
JavaScript编程学习技巧汇总
2016/02/21 Javascript
jQuery 自定义下拉框(DropDown)附源码下载
2016/07/22 Javascript
js严格模式总结(分享)
2016/08/22 Javascript
微信小程序 实战小程序实例
2016/10/08 Javascript
Web开发中客户端的跳转与服务器端的跳转的区别
2017/03/05 Javascript
layui实现动态和静态分页
2018/04/28 Javascript
用react-redux实现react组件之间数据共享的方法
2018/06/08 Javascript
jQuery实现上下滚动公告栏详细代码
2018/11/21 jQuery
vue项目中全局引入1个.scss文件的问题解决
2019/08/01 Javascript
js this 绑定机制深入详解
2020/04/30 Javascript
JS数据类型判断的几种常用方法
2020/07/07 Javascript
[01:37]PWL S2开团时刻DAY1&2——这符有毒
2020/11/20 DOTA
python单线程实现多个定时器示例
2014/03/30 Python
使用Python编写Linux系统守护进程实例
2015/02/03 Python
Python基础入门之seed()方法的使用
2015/05/15 Python
python处理二进制数据的方法
2015/06/03 Python
从当地商店送来的杂货:Instacart
2018/08/19 全球购物
EMU Australia澳大利亚官网:澳大利亚本土雪地靴品牌
2019/07/24 全球购物
毕业生大学生活自我总结
2014/01/31 职场文书
教师党的群众路线对照检查材料
2014/09/24 职场文书
2014年新教师工作总结
2014/11/08 职场文书
勤俭节约主题班会
2015/08/13 职场文书
事业单位岗位说明书
2015/10/08 职场文书
SpringBoot接入钉钉自定义机器人预警通知
2022/07/15 Java/Android