PHP操作MySQL类

WBOY
WBOY원래의
2016-06-23 14:30:21982검색

每次操作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

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.