当前位置:首页 > PHP教程 > php类库 > 列表

我的 DataBase类

发布:smiling 来源: PHP粉丝网  添加日期:2013-11-28 11:10:04 浏览: 评论:0 
  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; 

Tags: DataBase类 MYSQL操作类

分享到:

相关文章