PHP 類的完整應用例項

2021-10-19 10:33:49 字數 3727 閱讀 7161

該例項完整應用了php中的類

**用參考

<?php

class

classa

function

__destruct()

//下面這個是乙個經過final修飾後,不可重寫(覆蓋)的方法

public

final

function

add($a,

$b,$num)}

final

class

classb

extends

classa

function

classfunction()

//當訪問乙個不存在的或者私有屬性(許可權不夠)或方法的時候,能夠觸發的下列的魔術方法

//參考:

function

__set

($name

,$value

)function

__get

($name

)function

__isset

($name

)function

__unset

($name

)function

__call

($name

,$arguments)}

static

function

__callstatic

($name

,$arguments)}

//當將類物件序列化的時候,將會觸發以下方法

function

__sleep()

//當將序列化後的類物件還原的時候,將會觸發以下方法

function

__wakeup()

}$var

=new

classa()

;//建立類例項

echo

$var

->

name

;echo''

;echo

$var

->

add(3,

4,8)

;//呼叫類方法

echo''

;echo classa::pi

;//通過類名輸出類常量

echo''

;$var

=new

classb

('classb');

//建立繼承類的例項

echo

$var

->

name

;echo''

;$var

->

classfunction()

;echo''

;$var

->

num=3;

//失敗的設定(private修飾的變數只能類內呼叫和修改)

$var

->a;

//失敗的獲取

empty

($var

->a)

;//失敗的empty

isset

($var

->a)

;//失敗的isset

unset

($var

->a)

;//失敗的unset

$var

->a(

1,2)

;//失敗的非靜態方法呼叫

classb::a

(1,2

);//失敗的靜態方法呼叫

echo''

;abstract

class

people

inte***ce

human_eat

inte***ce

human_move

class

meextends

people

implements

human_eat

,human_move

function

eat(

)function

walk()

function

jump()

function

__clone()

function

__tostring()

}$var

=newme(

);$var

->

say();

$var

->

eat();

$var

->

walk()

;$var

->

jump()

;echo

$var

->

num;

echo''

;$i= clone $var

;//轉殖乙個物件

echo$i-

>

num;

echo''

;if($var

==$i

)echo

'內容相等';

if($var

!==$i

)echo

'位址不相等';

if($var

instanceofme)

//檢測當前物件屬於哪個類

echo

'$var屬於me類';

if($var

instanceof

people

)echo

'$var屬於people類';

if($var

instanceof$i)

echo

'$var與$i同屬於某個類';

echo''

;$str

=serialize

($var);

//序列化成字串

echo

'序列化後的字串:'

.$str.'

';$i=

unserialize

($str);

//還原成物件

echo

$var

;//隱式呼叫__tostring();

?>

對照結果:

classa構造完畢:defaultname

defaultname

function add:15

3.14

classa構造完畢:defaultname

classb構造完畢:classb

self呼叫:3.14

defaultname die

classb

get_class($object):classb

失敗的設定(num:3)

失敗的獲取(a)

失敗的isset或empty(a)

失敗的isset或empty(a)

失敗的unset(a)

失敗的非靜態方法呼叫(a)

引數2:12

失敗的靜態方法呼叫(a)

引數2:12

classb die

i say something

i eat

i walk

i jump

2被轉殖!

2內容相等

位址不相等

$var屬於me類

$var屬於people類

v ar

與var與

var與

i同屬於某個類

序列化後的字串:o:2:「me」:1:

php封裝的mysqli類完整例項

header content type text html charset utf 8 掌握滿足單例模式的必要條件 1 私有的構造方法 為了防止在類外使用new關鍵字例項化物件 2 私有的成員屬性 為了防止在類外引入這個存放物件的屬性 3 私有的轉殖方法 為了防止在類外通過clone成生另乙個物件 ...

php封裝的mysqli類完整例項

類 掌握滿足單例模式的必要條件 1 私有的構造方法 為了防止在類外使用new關鍵字例項化物件 2 私有的成員屬性 為了防止在類外引入這個存放物件的屬性 3 私有的轉殖方法 為了防止在類外通過clone成生另乙個物件 4 公有的靜態方法 為了讓使用者進行例項化物件的操作 class connectmy...

PHP封裝的MSSql操作類完整例項

class mssql else else 執行sql語句,返回對應的結果標識 function query sql else 執行insert into語句,並返回最後的insert操作所產生的自動增長的id function insert table,iarr 執行update語句,並返回最後的...