网站地图    收藏   

主页 > php专栏 > php类库 >

我的 DataBase类 - php类库

来源:自学PHP网    时间:2014-11-30 12:53 作者: 阅读:

[导读] ***数据库配置类* classDBConfig{publicstatic$HOST= 39;localhost 39;;publicstatic$USERNAME= 39;root 39;;publicstatic$PASSWORD=...

我的 DataBase类

  1. /** 
  2. * 数据库配置类 
  3. */ 
  4. class DBConfig 
  5. public static $HOST = 'localhost'
  6. public static $USERNAME = 'root'
  7. public static $PASSWORD = 'root'
  8. public static $DATABASE = 'shopping'
  9. public static $CHARSET = 'utf8'
  10. ?> 

 

  1. /** 
  2.  
  3. * 数据库操作类 
  4.  
  5. */ 
  6. class DataBase{ 
  7. private $connection
  8. /** 
  9. * 构造方法 
  10.  
  11. * @access public 
  12.  
  13. */ 
  14. public function __construct(){ 
  15.  
  16. $CONFIG = require(dirname(__FILE__).'/DBConfig.class.php'); 
  17.  
  18. $this>connection = mysql_connect(DBConfig::$HOST,DBConfig::$USERNAME,DBConfig::$PASSWORD); 
  19.  
  20. mysql_select_db(DBConfig::$DATABASE); 
  21.  
  22. mysql_query("SET NAMES '".DBConfig::$CHARSET."'"); 
  23.  
  24. /** 
  25.  
  26. * 析构方法 
  27.  
  28. * @access public 
  29.  
  30. */ 
  31. public function __destruct(){ 
  32. mysql_close($this>connection); 
  33.  
  34. /** 
  35. * 执行SQL查询语句 
  36.  
  37. * @access private 
  38.  
  39. * @param string $p_sql 查询命令 
  40.  
  41. * @return array 记录集,无记录返回空数组 
  42.  
  43. */ 
  44.  
  45. private function query($p_sql){ 
  46.  
  47. $dataTemp = mysql_query($p_sql,$this>connection); 
  48.  
  49. $data = array(); 
  50.  
  51. $dataItem = 0; 
  52.  
  53. while ($rows = mysql_fetch_assoc($dataTemp)) { 
  54.  
  55. $data[$dataItem] = $rows
  56.  
  57. $dataItem++; 
  58. return $data
  59. /** 
  60. * 执行SQL语句 
  61. * @access public 
  62. * @param string $p_sql 需要执行的SQL,可以为INSERT,SELECT,UPDATE或DELETE 
  63. * @return 如果SQL是SELECT,返回记录集,如果SQL是INSERT,返回新记录ID,如果SQL是UPDATE或DELETE,返回所影响的行数 
  64. */ 
  65. public function execute($p_sql){ 
  66. $controlr = strtoupper(substr($p_sql,0,6)); 
  67. switch ($controlr) { 
  68. case 'INSERT'
  69. mysql_query($p_sql,$this>connection); 
  70. $result = mysql_insert_id($this>connection); 
  71. break
  72. case 'SELECT'
  73. $result = $this>query($p_sql,$this>connection); 
  74. break
  75. default
  76. mysql_query($p_sql,$this>connection); 
  77. $result = mysql_affected_rows($this>connection); 
  78. break
  79. return $result
  80. ?> 

调用很简单:

  1. $sql = '.....'// 可以是任何增删改查的语句 
  2. $db = new DataBase(); 
  3. $rs = $db>execute($sql); 
  4. $db = null; 

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论