天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

PHP反射類ReflectionClass和ReflectionObject的使用方法

php中的擴展反射類,該擴展用來分析php程序,導出或提取出關于類、方法、屬性、參數等的詳細信息,包括注釋。
看一個這樣的問題,php類的成員變量沒有在類中聲明,而是在函數中聲明,有什么不同?
復制代碼 代碼如下:
class test{
    private $name;
    private $sex;
    function __construct(){
        $this->aaa='aaa';
    }
}

$test=new test();

$reflect=new ReflectionClass($test);
$pro=$reflect->getDefaultProperties();
print_r($pro);//打印結果:Array ( [name] => [sex] => )

echo $test->aaa;//打印結果:aaa

在這個test類中,聲明了兩個成員變量$name和$sex,但是在構造函數中,又聲明了一個變量$aaa,初始化類,使用反射類打印默認成員屬性只有聲明的兩個成員變量屬性,但是打印類的$aaa變量發現還是可以輸出結果。
請問類的成員變量不用聲明,在函數中聲明也是可以的嗎,有什么區別?
在你這個例子中,使用ReflectionClass是不恰當的,因為__construct只有在實例化class時,才會執行。
也就是說ReflectionClass更多的是反射類聲明時的結構,而不是類實例化后的結構,所以沒有輸出屬性aaa是正確,因為屬性aaa確實是(在類聲明時)不存在的。
那么怎么看屬性aaa呢,應該用ReflectionObject反射實例化后的結構,例如
復制代碼 代碼如下:
<?php
class test{
    private $name;
    private $sex;
    function __construct(){
        $this->aaa='aaa';
    }
}
$test=new test();

$reflect=new ReflectionObject($test);
$pro=$reflect->getProperties();
print_r($pro);
 
經過實例化以后,屬性aaa才會存在,這時你就能看到屬性aaa了
因為php是“動態”語言,所以可以類的成員變量不用聲明,在函數中聲明也是可以的。

php技術PHP反射類ReflectionClass和ReflectionObject的使用方法,轉載需保留來源!

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

主站蜘蛛池模板: A国产一区二区免费入口 | 农民工老头在出租屋嫖老熟女 | 国内精品自产拍在线少密芽 | 国产午夜永久福利视频在线观看 | 亚洲永久在线观看 | 亚洲精品AV一二三区无码 | 国产精品无码久久av | 久久午夜一区二区 | 叔叔 电影完整版免费观看韩国 | 欧美激情社区 | 一边亲着一面膜下的免费过程 | 国产精品综合AV一区二区国产馆 | 日本欧美久久久久免费播放网 | 亚洲午夜久久久无码精品网红A片 | 古代荡女丫鬟高H辣文纯肉 姑娘视频日本在线播放 | 哒哒哒高清视频在线观看 | 蜜桃传媒在线播放 | 人妻系列合集 | 国产精品国产三级国产AV麻豆 | 精品久久久爽爽久久久AV | 免费人成网站在线观看10分钟 | 国产一区二区青青精品久久 | 国产精品一区第二页 | 男男高h浪荡受h | 亚洲中文字幕日产乱码2020 | 69式国产真人免费视频 | 22eee在线播放成人免费视频 | 在线中文字幕网站 | 忘忧草日本在线社区WWW电影 | 亚洲三级视频在线 | 国产精品永久免费视频观看 | 中文字幕不卡免费高清视频 | 野花香在线观看免费观看大全动漫 | 小小水蜜桃3视频在线观看 小向美奈子厨房magnet | 狠狠鲁快播 | 久久AV国产麻豆HD真实乱 | 嫩草在线播放 | 同时和两老师双飞 | 看全色黄大色大片免费久黄久 | 精品国产手机视频在在线 | 晓雪老师我要进你里面好爽 |