例項分析 深入理解PHP的類和物件

2021-08-28 10:49:11 字數 1746 閱讀 6432

在物件導向的程式設計中,任何乙個事物都是物件,web頁面也不例外。接下來就用php建立乙個代表web頁面的類,使用該類可生成乙個html頁面。

(1)宣告屬性

乙個web頁面就是乙個html文件,應該有標題和內容,這裡再加乙個meta關鍵字,有利於搜尋引擎搜尋到該web頁面。所以這個web頁面類的屬性是標題,內容和關鍵字。它們都是公共屬性。

乙個web頁面還需要有乙個導航欄,所以需要宣告乙個存放導航欄內容的屬性。在這裡將屬性宣告成陣列,用陣列來存放導航欄的內容。

class page;

}

(2)定義該類的方法,通過這些類的方法可以生成web頁面的各個部分。比如web頁面的頁頭部分,關鍵字部分,css部分,正文部分,頁底部分等等。

(3)實現頁頭部分

乙個頁頭部分主要顯示**名稱和logo。在這次例項中我們將這個內容放在**中,然後在類的方法中用echo輸出。

public function displayheader()
(4)輸出關鍵字部分

關鍵字定義在meta標籤裡

public function displaykeywords()
(5)實現其他顯示web頁面各個部分的類方法與上面類似

最後附上完整**

display.php這個是包含類的檔案

<?php 

header("content-type:text/html;charset=utf8");

class page

public function displaycontent()

public function displaykeywords()

public function displaypage()

public function displayheader()

public function displaydaohang($daohang)

echo "";

echo "\n";

//calculate button size

$width = 100/count($daohang);

while(list($name,$url)=each($daohang))

echo "\n";

echo "\n";

}public function isurlcurrentpage($url)

else

}public function displaybutton($width,$name,$url,$active=true)else

}public function displaycss()

public function displayfooter()

}?>

這個是呼叫display.php的檔案 

<?php 

include("display.php");

$page = new page();

$page->content="*********************xx

";$page->displaypage();

?>

最後呈現結果

還是主要理解類和物件吧,這樣寫網頁真的好奇怪= = || 

對this 的深入理解

this的取值,分四種情況。我們來挨個看一下。在此再強調一遍乙個非常重要的知識點 在函式中this到底取何值,是在函式真正被呼叫執行的時候確定的,函式定義的時候確定不了。因為this的取值是執行上下文環境的一部分,每次呼叫函式,都會產生乙個新的執行上下文環境。情況1 建構函式 所謂建構函式就是用來n...

對正規化的深入理解

資料庫的設計正規化是資料庫設計所需要滿足的規範,滿足這些規範的資料庫是簡潔的 結構明晰的,同時,不會發生插入 insert 刪除 delete 和更新 update 操作異常。反之則是亂七八糟,不僅給資料庫的程式設計人員製造麻煩,而且面目可憎,可能儲存了大量不需要的冗餘資訊。正規化說明 1.1 第一...

對operator 的深入理解

比較了幾種operator 的處理方式,分析其正確和錯誤原因。比較了operator 的類內和類外定義兩種方式,分析其原因。include include using namespace std class gameplayer gameplayer int tp bool operator gam...