国产三级农村妇女在线,国产精品毛片a∨一区二区三区,国产乱子伦视频大全,国产精品色拉拉,国产欧美日韩一区二区三区,

首頁 > 技術(shù) > IOS開發(fā)

如何使用PHP對象POPO來優(yōu)化你的代碼

IOS開發(fā) 2023-02-16 22:19:06
目錄
  • 我們有如下的問題
  • 結(jié)論

我們有如下的問題

1.那么在另一種編程語言中 POJO 的名字是什么呢?

關(guān)于普通舊對象的約定是 “普通舊編程語言對象”。如果你在 Ruby 上,你可以調(diào)用 PORO(普通舊 Ruby 對象),也許 Rubyist 已經(jīng)知道了。如果是在 PHP 中,則被稱為 POPO(普通舊 PHP 對象)。如果每種語言都有一個類,那么它們都可以實(shí)現(xiàn)普通的舊對象。

2.為什么在現(xiàn)代 PHP 編程中使用 POPO ?

POPO 可以指導(dǎo)我們了解數(shù)據(jù)結(jié)構(gòu),并讓我們清楚地了解對象上的數(shù)據(jù)類型。 你可以在 POPO 中創(chuàng)建 DTO(數(shù)據(jù)傳輸對象),例如:“toArray ()”,“castToClass ()”,“toJSON ()” 之類的。所以數(shù)據(jù)或值不是在變量中,而是在基于類對象的。它可以為你提供關(guān)于如何從對象 A 到對象 B 進(jìn)行通信的標(biāo)準(zhǔn)化。 給你更少的函數(shù)參數(shù),你只需通過 POPO 類。在現(xiàn)代的 PHP 編程 web 應(yīng)用程序中,我們經(jīng)常使用 MVC(模型、視圖、控制器),它會經(jīng)常與每個對象通信。從控制器到 service,控制器從 service 獲取數(shù)據(jù)返回,并返回到視圖。有了 POPO,我們可以更好地與每個對象通信。

3.如何在 PHP 編程中定義 POPO?

你可以通過定義什么類、什么屬性來使用 POPO?POPO 應(yīng)該有 setter 和 getter。首先定義類,食品有屬性名、價格、數(shù)量和總價。然后我們可以通過食品 POPO 上的 setter 函數(shù)來設(shè)置值。如果我們想把它轉(zhuǎn)換成 JSON,我們可以調(diào)用 “toJSON ()” 函數(shù)等。你可以根據(jù)自己的需要開發(fā)。例如:

如何使用PHP對象POPO來優(yōu)化你的代碼(圖1)

4.如何在現(xiàn)代 PHP 編程中實(shí)現(xiàn) POPO ?

你可以通過創(chuàng)建新的 POPO 來啟動它。在上面的例子中,我們可以用 php 語法調(diào)用 “new Food ()”。

例 1 (簡單 Controller):

如何使用PHP對象POPO來優(yōu)化你的代碼(圖2)

在例 1 中,我們使用 toArray () 與 Model 通信。

示例 2 (Controller, Service and Model):

如何使用PHP對象POPO來優(yōu)化你的代碼(圖3)

我們將類對象傳遞給 service

如何使用PHP對象POPO來優(yōu)化你的代碼(圖4)

我們使用 toArray () 來與 Model 通信。

在下面的 food 服務(wù)中,沒有 POPO 函數(shù)使他看起來不可維護(hù),太多參數(shù)了。

如何使用PHP對象POPO來優(yōu)化你的代碼(圖5)

結(jié)論

這是現(xiàn)代 PHP 中的一個快速實(shí)現(xiàn)。你可以使用 POPO 簡化你的參數(shù)函數(shù),你可以得到更好地通信每個對象或類。

以上就是如何使用PHP對象POPO來優(yōu)化你的代碼的詳細(xì)內(nèi)容,更多關(guān)于使用PHP對象POPO來優(yōu)化你的代碼的資料請關(guān)注腳本之家其它相關(guān)文章!

TAg

加載中~

本網(wǎng)站LOGO受版權(quán)及商標(biāo)保護(hù),版權(quán)登記號:國作登字-2022-F-10126915,未經(jīng)湖南木星科技官方許可,嚴(yán)禁使用。
Copyright ? 2012-2022 湖南木星科技有限公司(木星網(wǎng))版權(quán)所有
轉(zhuǎn)載內(nèi)容版權(quán)歸作者及來源網(wǎng)站所有,本站原創(chuàng)內(nèi)容轉(zhuǎn)載請注明來源,商業(yè)媒體及紙媒請先聯(lián)系:aishangyiwan@126.com

工信部備案號:湘ICP備19012813號-5