首頁  >  文章  >  後端開發  >  PHP封裝了一個DB資料庫 mysql 的類

PHP封裝了一個DB資料庫 mysql 的類

WBOY
WBOY原創
2016-07-23 08:54:58963瀏覽
  1. // 設定資料庫
  2. define('DB_HOST, ' 127.0.0.1'); //伺服器位址
  3. define('DB_USER', 'root'); //使用者名稱
  4. define('DB_PASS', ''); //密碼
  5. define('DB_DATABASENAME', 'fenxiao'); //資料庫
  6. class Dbmy
  7. class Dbmy
  8. {
  9. /*
  10. *變數
  11. **/
  12. private $tablename=""; //表名
  13. private $fieldname="*";
  14. private $conn;
  15. private $where;
  16. private $sql; >
  17. function __construct($tablename)
  18. {
  19. //產生一個連線
  20. $this->conn = mysql_connect(DB_HOST,DB_USER, mysql_connect(DB_HOST,DB_USER, mysql_connect(DB_HOST,DB_USER, mysql_connect(DB_HOST,DB_USER, mysql_connect(DB_HOST,DB_USER, mysql_connect(DB_HOST,DB_USER, mysql_connect(DB_HOST,DB_USER, mysql_connect( ) or die("connect failed" . mysql_error());
  21. //選擇資料庫
  22. mysql_select_db(DB_DATABASENAME, $this->conn);
  23. >編碼格式
  24. mysql_query("SET NAMES utf8");
  25. //var_dump($conn);
  26. $this->tablename=$tablename;
  27. }
  28. //設定sql語句
  29. private function setsql($sql)
  30. {
  31. this>
  32. this> sql=$sql;
  33. }
  34. //設定條件語句
  35. public function where($where)
  36. {
  37. {
  38. $this->where=" where ".$where;
  39. return $this;
  40. }
  41. }
  42. }
  43. }
  44. }
  45. }
  46. //依指定欄位
  47. public function field($keyword)
  48. {
  49. $this->fieldname=$keyword;
  50. return $this;
  51. }
  52. //設定連線查詢表
  53. public function table($table1,$table2,$field,$bool)
  54. {
  55. $this->tablename="$table1 LEFT JOIN $table2 ON $table1.$field$bool$table2.$field";
  56. //print_r($this->tablename );
  57. return $this;
  58. }
  59. //設定多表查詢
  60. public function addtable($table1,addtable($table1,addtable($table1,addtable($table1,addtable($table1) $table2,$field,$bool)
  61. {
  62. $this->tablename.=" LEFT JOIN $table2 ON $table1.$field$bool$table2.$field";
  63. //print_r($this->tablename);
  64. return $this;
  65. }
  66. //設定連接查詢表
  67. ##SELECT * FROM 【wx_order LEFT JOIN wx_shopcar ON wx_shopcar.oid=wx_order.oid and wx_order.uid=wx_shopcar.uid LEFT JOIN wx_goods ON wx_good.g; 1 and wx_order.uid=3
  68. public function settable($sql)
  69. {
  70. $this->tablename=$sql;
  71. // print_r($this->tablename);
  72. return $this;
  73. }
  74. //查詢所有資料庫以數組形式輸出
  75. //查詢所有資料庫以數組形式輸出
  76. public function select()
  77. {
  78. /**
  79. * 查詢資料庫中所有的資料
  80. **/
  81. $arr=array();
  82. $arr=array();
  83. //執行sql語句
  84. $result = mysql_query("select ".$this->fieldname." from ".$this->tablename.$this->where, $this->conn);
  85. while ($row = mysql_fetch_assoc($result)) {
  86. array_push($arr, $row);
  87. array_push($arr, $row);
  88. }
  89. }
  90. return $arr;
  91. }
  92. //搜尋指定欄位資料
  93. publicunction find( )
  94. {
  95. //執行sql語句
  96. $result = mysql_query("select ".$this->fieldname." from ".$this->tablename. $this->where, $this->conn);
  97. $result = mysql_fetch_assoc($result);
  98. return $result;
  99. }
  100. //增加資料到資料庫
  101. public function add($data)
  102. {
  103. $keysql='';
  104. $valuesql='';
  105. foreach ($data as $key => $value) {
  106. $keysql.=",`$key`";
  107. $valuesql.=",'$value'";
  108. }
  109. $keysql=substr($keysql, 1);
  110. $valuesql=substr($valuesql, 1);
  111. $result=mysql_query("insert into `".$this->tablename."` ($keysql) VALUES($valuesql)");
  112. $id=mysql_insert_id ();
  113. //print_r("insert into `".$this->tablename."` ($keysql) VALUES($valuesql)");
  114. return $id;
  115. }
  116. //修改資料庫的內容 public function save($data) { $keysql=''; $valuesql=''; foreach ($data as $key => $value) { $keysql.=",` $key`='$value'"; } $keysql=substr($keysql, 1); //print_r($keysql); //echo "
    "; $result=mysql_query("UPDATE `".$this->tablename."` SET ".$keysql.$this->where); //print_r("UPDATE `".$this->tablename."` SET ".$keysql.$this->where); return $result; }
  117. ##刪除資料
  118. public function delete()
  119. {
  120. $result=mysql_query("DELETE FROM🎜>
  121. $result=mysql_query("DELETE FROM ->tablename $this->where");
  122. //print_r("DELETE FROM $this->tablename $this->where");
  123. return $result;
  124. }
  125. }
  126. /**
  127. * mysql_fetch_row: 傳回單列的各欄位 [0]=>"111"
  128. * mysql_fetch_field: 取得欄位資訊。 [0]=> ['name']=> object
  129. * mysql_fetch_array 傳回陣列資料。 [0]=>"asasds" ['name']=>
  130. */
?>
複製程式碼

裝了, PHP, mysql


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn