《PHP應用:php面象對象數據庫操作類實例》要點:
本文介紹了PHP應用:php面象對象數據庫操作類實例,希望對您有用。如果有疑問,可以聯系我們。
PHP教程本文實例講述了php面象對象數據庫操作類.分享給大家供大家參考.
PHP教程具體實現代碼如下:
代碼如下:
//此處構造一個數據庫操作類,封裝所有數據庫操作
//可以擴展便于后臺管理程序的使用
Class MySQLDB?
{?
?? var $host;?
?? var $user;?
?? var $passwd;?
?? var $database;
?? var $conn;?
?
?? //利用構造函數實現變量初始化?
?? //同時連接數據庫操作
?? function MySQLDB($host,$user,$password,$database)?
?? {?
????? $this->host = $host;?
????? $this->user = $user;?
????? $this->passwd = $password;?
????? $this->database = $database;?
????? $this->conn=mysql_connect($this->host, $this->user,$this->passwd) or?
???? die("Could not connect to $this->host");?
????? mysql_select_db($this->database,$this->conn) or?
???? die("Could not switch to database $this->database");?
?? }?
?
?? //該函數用來關閉數據庫連接
?? function Close()?
?? {?
????? MySQL_close($this->conn);?
?? }?
?
?? //該函數實現數據庫查詢操作
?? function Query($queryStr)?
?? {?
????? $res =Mysql_query($queryStr, $this->conn) or?
????? die("Could not query database");?
????? return $res;?
?? }?
?
?? //該函數返回記錄集
?? function getRows($res)?
?? {?
????? $rowno = 0;?
????? $rowno = MySQL_num_rows($res);?
????? if($rowno>0)?
????? {?
???????? for($row=0;$row<$rowno;$row++ )?
???????? {?
??????????? $rows[$row]=MySQL_fetch_array($res);
??????????? //本來為MySQL_fetch_row,但是不能以數組的方式來提取,只能用索引
??????????? //這樣可以用索引和名稱,更為方便
???????? }?
???????? return $rows;?
????? }?
??? }?
?
??? //該函數取回數據庫記錄數
??? function getRowsNum($res)?
??? {?
?????? $rowno = 0;?
?????? $rowno = mysql_num_rows($res);?
?????? return $rowno;
??? }?
?
?//該函數返回數據庫表字段數
?function getFieldsNum($res)
?{
??? $fieldno = 0;
??? $fieldno = mysql_num_fields($res);
??? return $fieldno;
?}
?
?//該函數返回數據庫表字段名稱集
?function getFields($res)
?{
????? $fno = $this->getFieldsNum($res);
????? if($fno>0)?
????? {?
???????? for($i=0;$i<$fno;$i++ )?
???????? {?
??????????? $fs[$i]=MySQL_field_name($res,$i);//取第i個字段的名稱
???????? }?
???????? return $fs;
????? }?
?}
}?
?
//使用時直接require該文件,然后實例化:
?
$SqlDB = new MySQLDB("localhost","root","root","testdb");
?
$sql = "select * from tableX...";
?
$result = $SqlDB->Query($sql);//查詢
?
$rs = $SqlDB->getRows($result);//獲得記錄集
?
$num = $SqlDB->getRowsNum($result);//獲得記錄數
?
...剩下的操作就是循環取值,
?
for($i=0;$i<$num;$i++){
?? echo($rs[$i]["字段名"]);
}
?
...
最后不要忘記關閉數據路連接
代碼如下:
$SqlDB->Close();
當然這句可以不要,php會自動注銷!但是這樣能夠養成一個好的習慣,最好還是加上!其他自己類推.
PHP教程希望本文所述對大家的PHP程序設計有所贊助.
維易PHP培訓學院每天發布《PHP應用:php面象對象數據庫操作類實例》等實戰技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培養人才。
轉載請注明本頁網址:
http://www.snjht.com/jiaocheng/13512.html