面對對象:

1、聲明一個類并初始化

<?php

class phpClass {

? ? var $var1;

? ? var $var2;

? ? function myfunc ($arg1, $arg2) {

? ? ? ? echo? $this->var1."? ".$this->var2."? ".$arg1."? ".$arg2;

? ? ? ? echo "\n";

? ? }

}

$obj1 = new phpClass;

$obj1->var1="name";

$obj1->var2="yanhe";

$obj1->myfunc("kk",1)

?>

2.構(gòu)造函數(shù)和析構(gòu)函數(shù)

<?php

class MyConstructableClass {

? ? var $name;

? ? function __construct($par1) {

? ? ? ? print("構(gòu)造函數(shù)");

? ? ? ? print("\n");

? ? ? ? $this->name = $par1;

? ? }

? ? function log(){

? ? ? ? echo "log:".$this->name;

? ? ? ? print("\n");

? ? }

? ? function __destruct() {

? ? ? ? print "銷毀 " . $this->name . "\n";

? ? }

}

$obj = new MyConstructableClass("yanhe");

$obj->log()

?>

3.繼承

PHP 使用關(guān)鍵字 extends 來繼承一個類,PHP 不支持多繼承,格式如下:

class Child extends Parent {

? // 代碼部分

}

4.方法重寫

如果從父類繼承的方法不能滿足子類的需求,可以對其進(jìn)行改寫,這個過程叫方法的覆蓋(override),也稱為方法的重寫。

5.接口

<?php

//聲明接口

interface iTemplate

{

? ? public function setVariable($name, $var);

? ? public function getHtml($template);

}

// 實現(xiàn)接口

class Template implements iTemplate

{

? ? private $vars = array();


? ? public function setVariable($name, $var)

? ? {

? ? ? ? $this->vars[$name] = $var;

? ? }


? ? public function getHtml($template)

? ? {

? ? ? ? foreach($this->vars as $name => $value) {

? ? ? ? ? ? $template = str_replace('{' . $name . '}', $value, $template);

? ? ? ? }

? ? ? ? return $template;

? ? }

}

?>

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容