如何使用PHP對(duì)象POPO來(lái)優(yōu)化你的代碼
我們有如下的問(wèn)題
1.那么在另一種編程語(yǔ)言中 POJO 的名字是什么呢?
關(guān)于普通舊對(duì)象的約定是 “普通舊編程語(yǔ)言對(duì)象”。如果你在 Ruby 上,你可以調(diào)用 PORO(普通舊 Ruby 對(duì)象),也許 Rubyist 已經(jīng)知道了。如果是在 PHP 中,則被稱為 POPO(普通舊 PHP 對(duì)象)。如果每種語(yǔ)言都有一個(gè)類,那么它們都可以實(shí)現(xiàn)普通的舊對(duì)象。
2.為什么在現(xiàn)代 PHP 編程中使用 POPO ?
POPO 可以指導(dǎo)我們了解數(shù)據(jù)結(jié)構(gòu),并讓我們清楚地了解對(duì)象上的數(shù)據(jù)類型。 你可以在 POPO 中創(chuàng)建 DTO(數(shù)據(jù)傳輸對(duì)象),例如:“toArray ()”,“castToClass ()”,“toJSON ()” 之類的。所以數(shù)據(jù)或值不是在變量中,而是在基于類對(duì)象的。它可以為你提供關(guān)于如何從對(duì)象 A 到對(duì)象 B 進(jìn)行通信的標(biāo)準(zhǔn)化。 給你更少的函數(shù)參數(shù),你只需通過(guò) POPO 類。在現(xiàn)代的 PHP 編程 web 應(yīng)用程序中,我們經(jīng)常使用 MVC(模型、視圖、控制器),它會(huì)經(jīng)常與每個(gè)對(duì)象通信。從控制器到 service,控制器從 service 獲取數(shù)據(jù)返回,并返回到視圖。有了 POPO,我們可以更好地與每個(gè)對(duì)象通信。
3.如何在 PHP 編程中定義 POPO?
你可以通過(guò)定義什么類、什么屬性來(lái)使用 POPO?POPO 應(yīng)該有 setter 和 getter。首先定義類,食品有屬性名、價(jià)格、數(shù)量和總價(jià)。然后我們可以通過(guò)食品 POPO 上的 setter 函數(shù)來(lái)設(shè)置值。如果我們想把它轉(zhuǎn)換成 JSON,我們可以調(diào)用 “toJSON ()” 函數(shù)等。你可以根據(jù)自己的需要開(kāi)發(fā)。例如:
4.如何在現(xiàn)代 PHP 編程中實(shí)現(xiàn) POPO ?
你可以通過(guò)創(chuàng)建新的 POPO 來(lái)啟動(dòng)它。在上面的例子中,我們可以用 php 語(yǔ)法調(diào)用 “new Food ()”。
例 1 (簡(jiǎn)單 Controller):
在例 1 中,我們使用 toArray () 與 Model 通信。
示例 2 (Controller, Service and Model):
我們將類對(duì)象傳遞給 service
我們使用 toArray () 來(lái)與 Model 通信。
在下面的 food 服務(wù)中,沒(méi)有 POPO 函數(shù)使他看起來(lái)不可維護(hù),太多參數(shù)了。
結(jié)論
這是現(xiàn)代 PHP 中的一個(gè)快速實(shí)現(xiàn)。你可以使用 POPO 簡(jiǎn)化你的參數(shù)函數(shù),你可以得到更好地通信每個(gè)對(duì)象或類。
以上就是如何使用PHP對(duì)象POPO來(lái)優(yōu)化你的代碼的詳細(xì)內(nèi)容,更多關(guān)于使用PHP對(duì)象POPO來(lái)優(yōu)化你的代碼的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
PHP fgetcsv 定義和用法(附windows與linux下兼容問(wèn)題)
PHP fgetcsv() 函數(shù)從文件指針中讀入一行并解析 CSV 字段。與PHP fgets() 類似,不同的是 PHP fgetcsv() 解析讀入的行并找出 CSV 格式的字段,然后返回一個(gè)包含這些字段的數(shù)組2012-05-05PHP中ini_set和ini_get函數(shù)的用法小結(jié)
本篇文章主要是對(duì)PHP中ini_set和ini_get函數(shù)的用法進(jìn)行了總結(jié)介紹,需要的朋友可以過(guò)來(lái)參考下,希望對(duì)大家有所幫助2014-02-02PHP實(shí)現(xiàn)簡(jiǎn)單的模板引擎功能示例
這篇文章主要介紹了PHP實(shí)現(xiàn)簡(jiǎn)單的模板引擎功能,結(jié)合實(shí)例形式詳細(xì)分析了PHP實(shí)現(xiàn)模板引擎功能的模版類、編譯類、控制器類及模板文件等實(shí)現(xiàn)方法與相關(guān)操作技巧,需要的朋友可以參考下2017-09-09Fastadmin中用戶登錄時(shí)TOKEN的交互方法
Fastadmin中登錄所有的操作都是基于User用戶表進(jìn)行的$this->auth,如果是別的用戶表需要進(jìn)行相關(guān)的改動(dòng)。API跟Auth這兩個(gè)類庫(kù)里面進(jìn)行系列操作即可。在需要獲取用戶信息的接口,前端需要在調(diào)用api的時(shí)候在頭部傳token,這個(gè)token在登錄的時(shí)候返回給前端。2023-07-07php實(shí)現(xiàn)壓縮合并js的方法【附demo源碼下載】
這篇文章主要介紹了php實(shí)現(xiàn)壓縮合并js的方法,涉及php壓縮文件類JSMin的相關(guān)調(diào)用與使用技巧,并附帶了完整的demo源碼供讀者下載參考,需要的朋友可以參考下2016-09-09站長(zhǎng)助手-網(wǎng)站web在線管理程序 v1.0 下載
站長(zhǎng)助手-網(wǎng)站web在線管理程序 v1.0 下載...2007-05-05