PHP数据库处理封装类实例

2018-09-07 17:38

阅读:325

  本文实例讲述了PHP数据库处理封装类。分享给大家供大家参考,具体如下:

  MySQL的操作相关类,检查并使用了mysqli

   <?php //sample15_12.php class mydb { private $user; private $pass; private $host; private $db; //Constructor function. public function __construct (){ $num_args = func_num_args(); if($num_args > 0){ $args = func_get_args(); $this->host = $args[0]; $this->user = $args[1]; $this->pass = $args[2]; $this->connect(); } } //Function to tell us if mysqli is installed. private function mysqliinstalled (){ if (function_exists (mysqli_connect)){ return true; } else { return false; } } //Function to connect to the database. private function connect (){ try { //Mysqli functionality. if ($this->mysqliinstalled()){ if (!$this->db = new mysqli ($this->host,$this->user,$this->pass)){ $exceptionstring = Error connection to database: <br />; $exceptionstring .= mysqli_connect_errno() . : . mysqli_connect_error(); throw new exception ($exceptionstring); } //Mysql functionality. } else { if (!$this->db = mysql_connect ($this->host,$this->user,$this->pass)){ $exceptionstring = Error connection to database: <br />; $exceptionstring .= mysql_errno() . : . mysql_error(); throw new exception ($exceptionstring); } } } catch (exception $e) { echo $e->getmessage(); } } //Function to select a database. public function selectdb ($thedb){ try { //Mysqli functionality. if ($this->mysqliinstalled()){ if (!$this->db->select_db ($thedb)){ $exceptionstring = Error opening database: $thedb: <br />; $exceptionstring .= $this->db->errno . : . $this->db->error; throw new exception ($exceptionstring); } //Mysql functionality. } else { if (!mysql_select_db ($thedb, $this->db)){ $exceptionstring = Error opening database: $thedb: <br />; $exceptionstring .= mysql_errno() . : . mysql_error(); throw new exception ($exceptionstring); } } } catch (exception $e) { echo $e->getmessage(); } } //Function to perform a query. public function execute ($thequery){ try { //Mysqli functionality. if ($this->mysqliinstalled()){ if (!$this->db->query ($thequery)){ $exceptionstring = Error performing query: $thequery: <br />; $exceptionstring .= $this->db->errno . : . $this->db->error; throw new exception ($exceptionstring); } else { echo Query performed correctly: . $this->db->affected_rows . row(s) affected.<br />; } //Mysql functionality. } else { if (!mysql_query ($thequery, $this->db)){ $exceptionstring = Error performing query: $thequery: <br />; $exceptionstring .= mysql_errno() . : . mysql_error(); throw new exception ($exceptionstring); } else { echo Query performed correctly: . mysql_affected_rows () . row(s) affected.<br />; } } } catch (exception $e) { echo $e->getmessage(); } } //Function to return a row set. public function getrows ($thequery){ try { //Mysqli functionality. if ($this->mysqliinstalled()){ if ($result = $this->db->query ($thequery)){ $returnarr = array (); while ($adata = $result->fetch_array ()){ $returnarr = array_merge ($returnarr,$adata); } return $returnarr; } else { $exceptionstring = Error performing query: $thequery: <br />; $exceptionstring .= $this->db->errno . : . $this->db->error; throw new exception ($exceptionstring); } //Mysql functionality. } else { if (!$aquery = mysql_query ($thequery)){ $exceptionstring = Error performing query: $thequery: <br />; $exceptionstring .= mysql_errno() . : . mysql_error(); throw new exception ($exceptionstring); } else { $returnarr = array (); while ($adata = mysql_fetch_array ($aquery)){ $returnarr = array_merge ($returnarr,$adata); } return $returnarr; } } } catch (exception $e) { echo $e->getmessage(); } } //Function to close the database link. public function __destruct() { try { //Mysqli functionality. if ($this->mysqliinstalled()){ if (!$this->db->close()){ $exceptionstring = Error closing connection: <br />; $exceptionstring .= $this->db->errno . : . $this->db->error; throw new exception ($exceptionstring); } //Mysql functionality. } else { if (!mysql_close ($this->db)){ $exceptionstring = Error closing connection: <br />; $exceptionstring .= mysql_errno() . : . mysql_error(); throw new exception ($exceptionstring); } } } catch (exception $e) { echo $e->getmessage(); } } } //Now, let us create an instance of mydb. $mydb = new mydb (localhost,root,); //Select a database to use. $mydb->selectdb (wps); //Now, lets perform an action. //$adata = $mydb->execute (UPDATE cd SET title=Hybrid Theory WHERE cdid=2); //Then, lets try to return a row set. $adata = $mydb->getrows (SELECT * FROM wp_terms); for ($i = 0; $i < count ($adata); $i++){ echo $adata[$i] . <br />; } $mydb->selectdb(test); $result = $mydb->execute(UPDATE user SET age = 23 WHERE id = 2); echo <br />; echo $result; ?>

  更多关于PHP相关内容感兴趣的读者可查看本站专题:《php+mysql数据库操作入门教程》、《PHP基于pdo操作数据库技巧总结》、《PHP+MongoDB数据库操作技巧大全》、《php+Oracle数据库程序设计技巧总结》、《php+mssql数据库程序设计技巧总结》、《php+redis数据库程序设计技巧总结》、《php+mysqli数据库程序设计技巧总结》及《php常见数据库操作技巧汇总》

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


评论


亲,登录后才可以留言!