您好,登錄后才能下訂單哦!
PHP中怎么利用OOP進行編程,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
如何使用PHP的OOP進行編程
在PHP中要完成OOP,需要進行對象封裝,也就是編寫類。我們可以通過生成一個新的SQL類實現對數據庫的簡單封裝。例如:
classSQL
{
var$Driver;//實際操作的數據庫驅動子類
var$connection;//共用的數據庫連接變量
functionDriverRegister($d)
{
if($d!="")
{
$include_path=ini_get("include_path");
$DriverFile=$include_path."/".$d.".php";
//驅動的存放路徑必須在PHP.ini文件中設定的INCLUDE_PATH下
if(file_exists($DriverFile))//查找驅動是否存在
{
include($DriverFile);
$this->Driver=new$d();
//根據驅動名稱生成相應的數據庫驅動類
returntrue;
}
}
returnfalse;//注冊驅動失敗
}
functionConnect($host,$user,$passwd,$database)//連接數據庫的函數
{
$this->Driver->host=$host;
$this->Driver->user=$user;
$this->Driver->passwd=$pas
swd;
$this->Driver->database=$d
atabase;
$this->connection=$this->Driver->Connect();
}
functionClose()//關閉數據庫函數
{
$this->Driver->close($this->connection);
}
functionQuery($queryStr)//數據庫字符串查詢函數
{
return$this->Driver->query($queryStr,$this->connection);
}
functiongetRows($res)//查找行
{
return$this->Driver->getRows($res);
}
functiongetRowsNum($res)//取得行號
{
return$this->Driver->getRowsNum($res);
}
}
?>
如何使用PHP的OOP進行編程
我們以操作MySQL數據庫為例。我們寫一個數據庫驅動類MySQL,在該類中,我們把有關MySQL數據庫操作的函數都做進一步的封裝。把包含該類,文件名為MySQL.php的文件放在PHP的系統include_path下,就可以正常地使用了。注意編寫數據庫驅動文件時,文件名應和類名保持一致。
ClassMySQL
{
var$host;
var$user;
var$passwd;
var$database;
functionMySQL()//利用構造函數實現變量初始化
{
$host="";
$user="";
$passwd="";
$database="";
}
functionConnect()
{
$conn=MySQL_connect($this->host,$this->user,$this->passwd)or
die("Couldnotconnectto$this->host");
MySQL_select_db($this->database,$conn)or
die("Couldnotswitchtodatabase$this->database;");
return$conn;
}
functionClose($conn)
{
MySQL_close($conn);
}
functionQuery($queryStr,$conn)
{
$res=MySQL_query($queryStr,$conn)or
die("Couldnotquerydatabase");
return$res;
}
functiongetRows($res)
{
$rowno=0;
$rowno=MySQL_num_rows($res);
if($rowno>0)
{
for($row=0;$row<$rowno;$row++) rowno="mysql_num_rows($res);">
同樣我們要封裝其他的“數據庫驅動”到我們的SQL類中,只需要建立相應的類,并以同名命名驅動文件,放到PHP的include目錄就可以了。
完成封裝以后,就可以在PHP中按照OOP的思想來實現對數據庫的編程了。
< ? Include(“SQL.php”); $sql=newSQL;//生成新的Sql對象 if($sql->DriverRegister(“MySQL”))//注冊數據庫驅動
{
$sql->Connect(“localhost”,”root”,””,”test”);
$res=$sql->query(“select*fromtest”);//返回查詢記錄集
$rowsnum=$sql->getRowsNum($res);
if($rowsnum>0)
{
$rows=$sql->getRows($res);
foreach($rowsas$row)//循環取出記錄集內容
{
foreach($rowas$field){
print$field;}
}
}
$sql->Close();
}
? >
看完上述內容,你們掌握PHP中怎么利用OOP進行編程的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。