物件導向之鏈式操作

2022-03-19 01:07:35 字數 1121 閱讀 2421

鏈式操作的格式是:$obj->(方法或屬性)->(方法或屬性)->(方法或屬性)...方法或屬性一般都是類中定義的函式。下面是乙個事例:

<?php

class student

public function setage($age)

public function getname()

public function getage()

}$stu=new student();

echo $stu->setname("jane")->setage(20)->getage();

//輸出的時候只能輸出乙個值

class person

public function getstu()

}$per=new person();

echo $per->setstu()->getstu()->setname("jenny")->setage(18)->getage();

//必須先setstu(),然後必須要getstu()後才能後續的函式

?>

我覺得鏈式操作的主要重點在於 『return $this;'明確$this代表的是什麼,答案是:返回當前類的物件。

開始比較困惑的是上面在進行鏈式操作輸出的時候,為什麼不能同時輸出getname()和getage().一旦寫在一起,就會提示"fatal error: call to a member function getage() on a non-object",非得分開寫才行。

後來想通了,鏈式操作其實就是在上一步完成的前提下,對於上一步返回的值或者類進行操作。比如上面的echo $stu->setname("jane")->setage(20)->getage();首先是呼叫$stu類當中的setname()進行賦值,現在假設賦值成功後,不返回$this,那麼下一步呼叫setage()就會出錯,fatal error: call to a member function setage() on a non-object in...,原因是setage()沒有操作物件,所以setname()必須有return $this,而且setage()也必須有return $this,否則後面的函式將因為沒有操作物件而出錯。

c 物件導向之檔案操作

程式執行時產生的資料都屬於臨時資料,程式一旦執行結束都會被釋放 通過檔案可以將資料持久化 c 中對檔案操作需要包含標頭檔案 fstream 檔案型別分為兩種 操作檔案的三大類 寫檔案的步驟 開啟方式 解釋ios in 為讀檔案而開啟檔案 ios out 為寫檔案而開啟檔案 ios ate 初始位置 ...

jQuery物件的鏈式操作

jquery物件的鏈式操作 首先來看乙個例子 myphoto css border solid 2px ff0000 attr alt good 對乙個jquery物件先呼叫了css 函式修改樣式,然後使用attr 函式修改屬性,這種呼叫方式象鏈一樣,所以稱為 鏈式操作 鏈式操作能夠讓 變得簡潔,因...

jQuery物件的鏈式操作

jquery物件的鏈式操作 首先來看乙個例子 myphoto css border solid 2px ff0000 attr alt good 對乙個jquery物件先呼叫了css 函式修改樣式,然後使用attr 函式修改屬性,這種呼叫方式象鏈一樣,所以稱為 鏈式操作 鏈式操作能夠讓 變得簡潔,因...