婷婷亚洲久悠悠色悠在线播放_天天爽夜夜爽人人爽一区二区_少妇群交换bd高清国语版_日韩不卡一区二区_欧美精品一二区_久久国产精品影视

18842388900

網(wǎng)站建設(shè) APP開發(fā) 小程序

Article/文章

記錄成長點(diǎn)滴 分享您我感悟

您當(dāng)前位置>首頁 > 知識(shí) > 網(wǎng)站建設(shè)

PHP魔術(shù)方法詳解

PHP下魔術(shù)方法總結(jié)

__construct>>

構(gòu)造函數(shù): PHP中的構(gòu)造函數(shù)要求無法執(zhí)行構(gòu)造函數(shù)的重載,即只有一個(gè)構(gòu)造函數(shù)。

函數(shù)__construct($ name='宋',$ sex='',$ age=1){//當(dāng)對(duì)象誕生時(shí),構(gòu)造函數(shù)將初始值賦給成員屬性$ this-> name=$ name; $ this-> sex=$ sex; $ this-> age=$ age;}描述:1。在一個(gè)類中,它只能有一個(gè)構(gòu)造函數(shù)。 2.默認(rèn)構(gòu)造函數(shù)是public,如果是private,則會(huì)形成單例模式。

1422611606130054.gif__set方法來設(shè)置

__set()方法:此方法用于設(shè)置私有成員屬性的值,有兩個(gè)參數(shù),第一個(gè)參數(shù)是要設(shè)置值的屬性名,第二個(gè)參數(shù)是要為屬性設(shè)置的值,沒有回報(bào)價(jià)值。此方法也不需要手動(dòng)調(diào)用。它也可以是私人的。直接設(shè)置私有屬性值時(shí)會(huì)自動(dòng)調(diào)用它。相同的屬性已經(jīng)封裝。如果沒有__set()方法,不允許,例如:$ this-> name='zhangsan',這將導(dǎo)致錯(cuò)誤,但如果您將__set($ property_name,$ value)方法添加到類中,將值直接分配給私有屬性時(shí)將自動(dòng)調(diào)用它,將name等屬性傳遞給$ property_name,將值“zhangsan”傳遞給$ value,然后執(zhí)行賦值以達(dá)到賦值的目的。如果成員屬性未封裝為私有,則對(duì)象本身不會(huì)自動(dòng)調(diào)用此方法。為了不傳遞非法值,您也可以使用此方法進(jìn)行判斷。例如,實(shí)例:

1422611606130054.gif對(duì)應(yīng)的私有$ name實(shí)例; //第一個(gè)成員屬性$ name定義了人的名字,這個(gè)屬性是封裝私有的$ sex; //第二個(gè)成員屬性$ sex定義了人的性別,這個(gè)屬性是封裝私有的$ age; //第三個(gè)成員屬性$ age定義了人的年齡,這個(gè)屬性是封裝的

//聲明magic方法需要兩個(gè)參數(shù),它在分配私有屬性時(shí)自動(dòng)調(diào)用,并且可以屏蔽一些非法賦值私有函數(shù)__set($ propertyName,$ propertyValue){if($ propertyName=='sex'){//如果第一個(gè)參數(shù)是屬性名稱sex那么條件為真//對(duì)于非法數(shù)據(jù)處理if(!($ propertyValue=='male'|| $ propertyValue=='female'))//第二個(gè)參數(shù)只能是男性或女性回歸; //如果非法參數(shù)返回null,則執(zhí)行該方法} if($ propertyName=='age'){//如果第一個(gè)參數(shù)是屬性名稱age,則建立條件if($ propertyValue> 150 | | $ propertyValue< 0)//第二個(gè)參數(shù)只能是0到150之間的整數(shù)返回值; //如果非法參數(shù)返回null,則執(zhí)行方法} ?//對(duì)于不需要進(jìn)行驗(yàn)證的數(shù)據(jù),根據(jù)參數(shù)決定為那個(gè)屬性被賦值,傳入不同的成員屬性名,賦上傳入的相應(yīng)的值,定義賦值的方式.$ this-> $ propertyName=$ propertyValue;}如調(diào)用時(shí):$ person1=new Person('Zhang San','Men', 20); //自動(dòng)調(diào)用__set()函數(shù)將屬性名稱傳遞給第一個(gè)參數(shù),將屬性值“He four”傳遞給第二個(gè)參數(shù)?? ?$person1->name="何四";???? ?當(dāng)進(jìn)行賦值時(shí),它會(huì)調(diào)用__set中的 $this->propertyName=$propertyValue代碼

__get()方法:此方法用于獲取私有成員屬性的值。有一個(gè)參數(shù)。參數(shù)傳遞要獲取的成員屬性的名稱,并返回獲取的屬性值。這個(gè)方法不需要手動(dòng)調(diào)用,因?yàn)槲覀円部梢运接谢@個(gè)方法,當(dāng)直接獲取私有屬性時(shí)會(huì)自動(dòng)調(diào)用對(duì)象

獲取方法

//在類中添加__get()方法,在直接獲取屬性值時(shí)自動(dòng)調(diào)用一次,將屬性名稱作為參數(shù)傳遞并處理私有函數(shù)__get($ propertyName){//在方法之前使用私有修飾阻止對(duì)象外部調(diào)用if($ propertyName=='sex'){//如果參數(shù)在“sex”中傳遞,則條件設(shè)置為返回'機(jī)密'; //不要讓別人獲得性別,用“secret”替換它}} if if($ propertyName=='age'){//如果參數(shù)傳遞“age”那么條件為真如果($ this-&gt ; age> 30)//如果對(duì)象中的年齡大于30,則條件為真。返回$ this - >年齡-10; //返回對(duì)象中的虛假年齡,比實(shí)際年齡小10歲。 //如果對(duì)象中的年齡不大于30,請(qǐng)執(zhí)行以下代碼返回$ this-> $ propertyName; //讓Access可以獲得對(duì)象中的真實(shí)年齡} else {//如果參數(shù)在其他屬性名稱中傳遞,則條件為真==>> return $ this-> $ propertyName; //沒什么別的限制,你可以直接返回屬性的值}}說明:1。它只有2. name屬性是關(guān)鍵代碼的參數(shù),這里返回$ this-> $ PropertyName,代碼實(shí)際上是獲得了屬性值,如代碼:

。 $ person1=new Person('張三','男',40); echo'name:'。$ person1-> name。'';它會(huì)被自動(dòng)調(diào)用,尤其是__get()方法中的$,Person1是$ this。

>>>

關(guān)于__isset()和__unset()函數(shù)引入的含義和函數(shù)[PHP不提供unset和isset函數(shù)嗎?] __ isset()方法:isset()是一個(gè)用于確定是否設(shè)置變量的函數(shù)。輸入變量作為參數(shù),如果傳遞的變量存在則返回true,或返回false。

因此,如果在對(duì)象外使用“isset()”函數(shù)來確定對(duì)象中的成員是否已設(shè)置,是否可以使用它?在兩種情況下,如果對(duì)象中的成員是公共的,我們可以使用此函數(shù)來確定成員屬性。如果它是私有成員屬性,則此函數(shù)將不起作用,因?yàn)樗接惺窃谕獠糠庋b的。無形。然后你只能使用__isset魔術(shù)方法來完成。

同樣,__unset也是如此。

應(yīng)用__isset和__unset函數(shù)

//__ isset()方法private function__isset($ nm){echo'isset()函數(shù)在確定私有成員時(shí)自動(dòng)調(diào)用'; return isset($ this-> $ nm);這里測(cè)試的結(jié)果是真還是假} //__ unset()方法private function__unset($ nm){echo'自動(dòng)調(diào)用'unset($ this-> $ nm); >

網(wǎng)站建設(shè),小程序開發(fā),小程序制作,微信小程序開發(fā),公眾號(hào)開發(fā),微信公眾號(hào)開發(fā),網(wǎng)頁設(shè)計(jì),網(wǎng)站優(yōu)化,網(wǎng)站排名,網(wǎng)站設(shè)計(jì),微信小程序設(shè)計(jì),小程序定制,微信小程序定制

相關(guān)案例查看更多

主站蜘蛛池模板: 中日韩a级片| 国产在线看片无码人精品 | 色婷婷五月色综合AⅤ视频 午夜亚洲国产理论片 | 无码在线观看一区二区 | 在线观看少妇 | 久久99久久99精品免视看动漫 | 国产乱子伦农村叉叉叉 | 亚洲综合在线一区 | 久久精品久久久久久 | 老师洗澡让我吃她胸视频 | 91九色欧美| 97av中文字幕 | 18禁在线无码无遮挡观看视频 | 成人资源www网在线最新版 | 99精品免费 | 女社长湿润丝袜在线观看 | 校花高潮抽搐冒白浆 | 欧美日韩一区不卡 | 人妻熟女一二三区夜夜爱 | 红桃成人无码免费网站 | 噜噜噜在线观看免费视频日本 | 欧美成本人视频免费播放 | 日韩日韩日韩日韩日韩 | 日韩av成人在线 | a色网站 | 国产一区二区三区在线观看网站 | 国产精品久久久久久久浪潮网站 | 无码专区—va亚洲v天堂麻豆 | 俄罗斯老熟妇乱子伦视频 | 神偷奶爸4中文版免费观看 国产黄色大片在线观看 | 黄色地址在线观看 | 无码色偷偷亚洲国内自拍 | 爱做久久久久久 | 日本国产精品无码字幕在线观看 | 极品福利在线 | 国产成人综合在线女婷五月99播放 | 久久不见久久见免费视频7 一个人看的www免费视频在线观看 | 亚洲精品自在在线观看 | 欧美老妇毛葺葺BBXX | 亚洲国产一区二区av | 国产在线观看不卡 |