究竟用中文怎么翻譯呢? inaccessible :n. 難達到;難 " /> 婷婷精品视频,国产观看精品一区二区三区,伊人久久大香线

一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

詳解php的魔術方法__get()和__set()使用介紹

先看看php官方文檔的解釋:
__set() is run when writing data to inaccessible properties.
__get() is utilized for reading data from inaccessible properties.

究竟用中文怎么翻譯呢?
inaccessible :n. 難達到;難接近;無法理解。

有代碼有真相:
復制代碼 代碼如下:
<?php
error_reporting(E_ALL);
class stu{
private $a;
private $b = 0;
public $c;
public $d = 0;
//這里的 private 可以用 protected public 替代
private function __get($name) {
return 123;
}

//這里的 private 也可以用 protected public 替代
private function __set($name, $value) {
echo "This is set function";
}
}
$s = new stu();
var_dump($s->a); //output: 123
var_dump($s->b); //output: 123
var_dump($s->c); //output: null
var_dump($s->d); //output: 0
var_dump($s->e); //output: 123
$s->a = 3; //output: This is set function
$s->c = 3; //no output
$s->f = 3; //output: This is set function
?>


結果分析:
如果沒有__get方法,執行 var_dump($s->a) var_dump($s->b) 會有致命的錯誤
如果沒有__get方法,執行 var_dump($s->e) 會有一個notice,提示沒有定義屬性 $e

總結:
1. 從一個難以訪問的屬性讀取數據的時候 __get() 方法被調用
2. 向一個難以訪問的屬性賦值的時候 __set() 方法被調用
3. 難以訪問包括:(1)私有屬性,(2)沒有初始化的屬性
4. __isset() __unset() 也類似

php技術詳解php的魔術方法__get()和__set()使用介紹,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 波多野结衣视频一区二区 | 黄a级网站在线观看 | 91精品国产亚一区二区三区 | 精品日本久久久久久久久久 | 一区二区三区免费 | 国产呦精品一区二区三区网站 | 亚洲六月丁香六月婷婷蜜芽 | 日本久久网站 | 极品美女一级毛片免费 | 国产农村乱子伦精品视频 | 欧美xxxx视频| 国产馆手机在线观看 | 无遮挡一级毛片 | 波多野结衣视频一区二区 | 亚洲深爱| 蕾丝视频福利网站 | 欧美精品v国产精品v日韩精品 | 激情视频在线播放 | 激情图片小说 | 激情图片小说网 | 四虎影视国产永久免费 | 91九色视频无限观看免费 | 免费小视频在线观看 | 日韩中文字幕亚洲无线码 | 午夜视频久久 | 亚洲视频综合 | 日本一区二区高清免费不卡 | 色综合a | 性福利视频 | 国产一区二区精品久久凹凸 | 免费女人扒开下面无遮挡 | 中文字幕综合久久久久 | 成人97 | 青草国产视频 | 久久久久久久久一级毛片 | 亚洲人成影网站~色 | 国产第二区 | 国产99在线观看 | fefe66免费毛片你懂的 | 成人欧美在线观看 | 精品久久久久久久久久中文字幕 |