物件導向魔術方法

2021-10-04 14:20:33 字數 1394 閱讀 8986

特別的方法

在特定的時機,完成自動呼叫的一些物件方法

__construct():例項化過程中 初始化物件操作

__destruct():物件被銷毀的過程中,釋放物件棧占用的額外資源 ,收尾性工作

__clone():轉殖物件,重新初始化一下轉殖出來的新物件

__tostring():物件轉換為字串

__set():

__get():

__unset():

__call()

__callstatic()

__sleep() 序列化物件過程中指定需要被序列化的物件屬性列表

__wakeup() 凡序列化過程中

__invoke()

案列分析**戰術 student.class.php

<

?php

class student

public function entry

($num)

//睡眠

public function __sleep()

//甦醒

public function __wakeup()

}?>

序列化操作

<

?php

function auto

($classname)

spl_autoload_register

("auto");

$stu=new student

('楊過',20

);$stu->

entry(10

);$stu->

entry(20

);$stu->

entry(30

);echo $stu->sentry;

//對此物件進行序列化操作

$str=

serialize

($stu)

;echo "";

$result=

file_put_contents

("./stu.txt"

,$str)

;var_dump

($result);?

>

反序列化操作

<

?php

$str=

file_get_contents

("./stu.txt");

//為了防止在反序列化過程**現不完整的類需要在此處匯入該類進行例項化

require "./student.class.php"

;$obj=

unserialize

($str)

;var_dump

($obj);?

>

PHP物件導向 魔術方法

get name 觸發時機 當呼叫乙個不訪問的成員屬性的時候,會自動觸發,可以利用這個方法來完成對不可呼叫的屬性進行呼叫,但是不能設定值 set name,value 觸發時機 當給乙個不可訪問的成員屬性賦值的時候,會自動觸發這個方法,可以利用這個方法完成對不可以訪問的屬性進行賦值 isset na...

php 物件導向之 魔術方法

php 魔術方法 php 模式方法 描述 需要在類中定義魔術方法 construct destruct tostring 當物件被當作string使用時,這個方法會被自動呼叫。如 public function tostring echo myobj invoke 當物件被當成方法是,這個方法會自動...

Python學習 物件導向 魔術方法

init 和 new 魔術方法 class person 初始化魔術方法 觸發時機 初始化物件時觸發 不是例項化觸發,但是和例項化在乙個操作中 def init self self.name name print init def new cls,args,kwargs 例項化魔術方法 觸發時機 在...