解讀PHP面向對象程序設計實例
PHP面向對象程序設計的方法,結合實例形式分析了PHP面向對象程序設計中類的聲明與實例化及類中方法的調用技巧,需要的朋友可以參考下。
在對超大型項目的開發過程中,如果使用面向過程地開發,代碼量是非常的'龐大,這將大量的用到判斷和循環嵌套,和很多很相似的代碼,不僅使項目代碼量更加的龐大,還不利於開發,重用及維護。
面向對象就能很好的解決這個問題,面向對象很好的封裝性,節省了很多精力,不用關心對象內部的運作,只要關心對象與對象之間的交互,便於維護,而繼承性使得代碼大量地精簡。
我們先來看一個題目:
例:張三是一位普通人,別人早晨向他打招呼,他會説“早上好”,但是有一天他被車撞了,腦子受了一點傷,因此,別人早晨向他打招呼時,他有時會説:“早上好”,但有時會説:“晚上好”,甚至辱罵對方。
分析:因為現在要面向對象,那我們先把對象拿出來
對象1:張三(人) 智商(名稱是屬性) 打招呼(動詞是方法)
對象2:車子 撞人(動詞是方法) <?php
//創建一個human類,類是對象的實例(工廠裏的模子)
class human{
//普通人的iq為100
public $iq = 100;
//打招呼,早上看到人就早上好
public function greet(){
echo '早上好';
}
}
//實例化一個對象李四
$lisi = new human();
$lisi->greet();
//返回早上好
?>
這個是實例化一個正常的李四
下面來看被車子撞了的李四
<?php
//創建一個human類,類是對象的實例(工廠裏的模子)
class human{
//普通人的iq為100
public $iq = 100;
//打招呼,早上看到人就早上好
public function greet(){
//當智商大於等於100
if($this->iq>=100){
echo '早上好','<br />';
}else{
//當智商小於100,隨機出現以下問候
$regard = array('早上好','晚上好','混蛋');
echo $regard[rand(0,2)],'<br />';
}
}
}
//實例化一個對象李四
$lisi = new human();
$lisi->greet();
//返回早上好
class car{
public function hit($people){
//撞了以後人的智商隨機出現了變化
$people->iq=rand(40,120);
}
}
//實例化一輛寶馬車子
$baoma = new car();
//寶馬車子撞人了
$baoma->hit($lisi);
//撞人之後人的智商
echo $lisi->iq,'<br />';
//人的根據智商的多少,問候也不相同
$lisi->greet();
?>
-
PHP編程常用技巧四則
PHP具有非常強大的功能,所有的CGI的功能PHP都能實現。下面就來和小編一起看看PHP編程常用技巧四則吧。1.配置PHP文件目錄作為服務器端解釋執行的腳本語言,PHP程序放置在某個服務器可以訪問的目錄下,一般可以通過修改Apache的進行配置,例如我們在該文件中的一句:Ali...
-
在PHP中使用隨機數的三個步驟
如何做一個隨機的出現的網頁,可是用rand()就是不行,聽説要初始化隨機數,可是怎麼初始化,請不吝賜教,謝謝!//第一步:初始化種子$seedarray=microtime();$seedstr=split("",$seedarray,5);$seed=$seedstr[0]*10000;//第二步:使用種子初始化隨機數發生器srand($seed);//...
-
作為程序員必知的16個最佳PHP庫
PHP是一種功能強大的web站點腳本語言,通過PHP,web網站開發者可以更容易地創建動態的引人入勝的web頁面。開發人員可以使用PHP代碼與一些網站模板和框架來提升功能和特性。然而,編寫PHP代碼是一個繁瑣又耗時的過程。為了縮短開發時間,開發人員可以用PHP庫替代編寫代...
-
tp搜索時首頁分頁和搜索頁保持條件分頁的方法
在做搜索查詢時突然發現在首頁用的`分頁代碼在搜索頁使用時出現錯誤,首頁分頁代碼(代碼中標註start與end部分為分頁代碼),下面是由本站小編為大家整理的Thinkphp搜索時首頁分頁和搜索頁保持條件分頁的方法,喜歡的可以收藏一下!瞭解更多詳情資訊,請關注應屆畢業生...