首頁 >後端開發 >php教程 >PHP物件導向程式設計快速入門

PHP物件導向程式設計快速入門

WBOY
WBOY原創
2016-07-29 08:35:40872瀏覽

【摘 要】物件導向程式設計(OOP)是我們程式設計的基本技能,PHP4對OOP提供了良 好的支援。如何運用OOP的想法來進行PHP的高階編程,對於提升PHP程式設計能力和 規劃好Web開發架構都是非常有意義的。
物件導向程式設計(OOP)是我們程式設計的基本技能,PHP4對 OOP提供了良好的支援。如何運用OOP的想法來進行PHP的高階編程,對於提升PHP 程式 能力和規劃好Web開發架構都是非常有意義的。下面我們就透過實例來說明 使用PHP的OOP進行程式設計的實際意義和應用方法。
我們通常在做一個有資料庫後台的網站的時候,都會考慮到程式需 要適用於不同的應用程式環境。和其他程式語言有所不同的是,在PHP中,操作資料 庫的是一系 列的具體功能函數(如果你不使用ODBC介面的話)。這樣做雖然效 率很高,但是封裝卻不夠。如果有一個統一的資料庫接口,那麼我們就可以不對 程式做任何修 改而適用於多種資料庫,從而使程式的移植性和跨平台能力都大 大提高。
在PHP中要完成OOP,需要進行 物件封裝,也就是編寫類別。我們可以透過產生一個新的SQL類別來實現對資料庫的簡 單封裝。例如: 
 PHP:  

複製程式碼 程式碼如下:

var $Driver; //實際操作的資料庫驅動子類別 
var $connection; //共用的資料庫連線變數 
function DriverRegister($d) 

if($ ") 

$include_path = ini_get("include_path"); 
$DriverFile = $include_path."/".$d.".php";在PHP.ini檔案中設定的 INCLUDE_PATH下 
if( file_exists( $DriverFile)) //尋找驅動程式是否存在 

include($DriveFile); new $d(); 
// 根據驅動名稱產生對應的資料庫 驅動類別 
return true; 

function Connect($host,$user,$passwd,$database)//連接資料庫的函數 

$this->Driver->host=$host; 
$this->Driver->host=$host; ->user=$user; 
$this->Driver->passwd=$passwd; 
$this->Driver->database=$database; 
$this->connection =$database; 
$this->connection = $- 
$this->connection = $- Driver->Connect(); 

function Close()//關閉資料庫函數 

$this->Driver->close($this->connection); 

function Query($queryStr)//資料庫字串查詢函數 

return $this->Driver->query($queryStr,$this->connection); 
} function收到🎜>{ 
return $this->Driver-> getRowsNum ($res); 


?> 
 

?> 
 

?> 
 
我們以操作為據點。我們寫一個資料庫驅動類別MySQL,在該類別中,我們把有關MySQL資料庫 操作的函數都做進一步的封裝。把包含該 類,檔案名稱為MySQL.php的檔案放在 PHP的系統 include_path下,就可以正常使用了。注意編寫資料庫驅動檔案時 ,檔案名稱應和類別名稱保持一致。
PHP:  


複製程式碼

程式碼如下:

 
類別MySQL

var $host; 
var $用戶; 
var $pass / 利用建構子實現變數初始化

$host = ""; 
$使用者=“”; 
$passwd = ""; 
$資料庫=”; } 
函數Connect() 

$conn = MySQL_connect($this->host, $this->user,$this->passwd) 或
die("無法連接到此->主機」); 
MySQL_select_db($this->database,$conn) 或
die("無法切換到資料庫$this->database;"); 
回傳$conn; 

函數Cl​​ose($conn) 

MySQL_close($conn); 

功能($queryStr, $conn) 或
die("無法查詢資料庫"); 
回傳$res; 

函數getRows($res) 0; 
$rowno = MySQL_num_rows($res); 
if($rowno>0) 

for( $row=0;$row$rows[$row]=MySQL_fetch_row($)資源); 

回傳$行; 

}
$rowno = 0; 
$rowno = mysql_num_rows($res); 
回傳$rowno; 


? > 

同樣我們要把其他的「資料庫驅動」封裝到我們的SQL類別中,只需要建立對應的類,並以同名命名驅動文件,放到PHP的include目錄就了。
完成封裝以後,就可以在PHP中依照OOP的想法來實現對資料庫的程式設計了。
PHP:  



複製程式碼

程式碼如下:


 
包含(“SQL.Sphp”); >$sql = 新  SQL; //產生新的Sql物件 
if($sql-> DriverRegister(「MyfontSQL」& lt; //註冊資料庫驅動 

$sql ->連接(“localhost”,”root”&l t;font color=”#007700”>,””,”test”&l t;font color=” #007700”>);  $res=$sql->query(“select * from test”); //回傳查詢記錄集$rowsnum = $sql- $sql- >getRowsNum($res);  if($rowsnum > 0) 

$rows = $sql->getRows($res); 

/$sql->循環取出記錄集內容 

foreach($row as $field){ 
print $field;} 

}
$ >} 
? > 
 
在實際應用中,我們也可以依照實際需求對各種物件類別做進一步擴展。在PHP中,也提供了一系列複雜的OOP方法,例如繼承、重載、引用、串充分調節各種方法並靈活運用,就能使你的網站更加合理和成型,開發和維護也更容易。
以上就介紹了PHP物件導向程式設計快速入門,包含了面向的內容,希望對PHP教學有興趣的朋友有幫助。


陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn