PHP操作MySQL类

WBOY
WBOYOriginal
2016-06-23 14:30:21978browse

每次操作MySQL数据库的时候,都要进行连接、选择数据库等重复的动作,何不将它封装成一个类呢?这样做就简单了。

也许你会说,写成函数就行了啊。不过,写成一个类就封装了数据库的一些信息,比如数据库名、数据库主机、数据库用户及密码等。这样,在某个需要操作MySQL的函数里,就不用传入这些信息,直接传入一个MySQL对象就可以了,是不是很方便?

很好,下面就是代码:

下载: http://down.qiannao.com/space/file/pgtimes/share/2011/3/8/mysqlobj.php/.page

db_name = $dn;         $this->db_user = $du;         $this->db_pawd = $dp;         $this->db_host = $dh;         $this->db_charset = $dc;         $this->db_collate = $do;     }         /** 析构函数 */     function __destruct()     {         if($this->isCon)             $this->closeCon();     }         /** 创建连接,没有返回值 */     function newCon()     {         if(!$this->isCon)         {             $this->link = mysql_connect($this->db_host,$this->db_user,$this->db_pawd)                 or die("无法创建数据连接

".mysql_error());             mysql_query("SET NAMES {$this->db_charset}");             $this->isCon = true;         }     }         /** 关闭连接,没有返回值 */     function closeCon()     {         if($this->isCon)         {             mysql_close($this->link);             $this->isCon = false;         }     }         /** 执行SQL命令,输入参数:SQL语句,返回值:执行结果 */     function execute($sql)     {         if(!$this->isCon)             $this->newCon();                 $db_selected = mysql_select_db($this->db_name,$this->link)             or die("打开数据库失败

".mysql_error($this->link));                 $result = mysql_query($sql, $this->link);                 return $result;     }     }   ?>

亦可点我下载;

应如下创建一个MySQL对象

像如下使用:

newCon();               // 新建连接 $sql = "SELECT * FROM table"; // SQL语句 $result = $mysql->execute($sql); // 执行SQL查询,并返回结果 $mysql->closeCon();            // 关闭连接 ?>

一定要在下一个newCon()之前关闭连接!
所以,请每次执行SQL查询后,及时关闭连接(closeCon())!

由于每次创建MySQL对象都要传入数据库的一些信息,而我们写网站的时候这些信息基本不会变,所以我们可以写一个函数

把对MySQL数据库的操作、信息封装成一个类后,自然有很多的好处,这个好处,在我以后的这些文章里会有极大的体现。

 

转自:http://blog.abreto.net/oa/php-mysql-class

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:3 ways to serialize variables in phpNext article:PHP常用语句