PHP中外部调用类私有属性的方法-创新互联

小编给大家分享一下PHP中外部调用类私有属性的方法,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!

10年积累的成都网站制作、成都网站建设经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先制作网站后付款的网站建设流程,更有芮城免费网站建设让你可以放心的选择与我们合作。
外部调用类的私有属性

先来了解一下PHP类中的__get__set函数
当试图获取一个不可达属性时,类会自动调用__get函数。
当试图设置一个不可达属性时,类会自动调用__set函数。

首先,来看一下__get函数,先来获取一个可达属性试试:

a;
?>

看一下它的返回:

1

没有问题,没有调用__get函数,现在我来访问一个私有的不可达属性:

b;
?>

会发现:

you can get b

说明这里调用了__get函数,我再来看一下__set函数,同样也是先使用可达的public属性:

a = 1;
    echo $dy->a;
?>

看一下输出:

1

使用成功,没有问题,接着我们来使用私有属性:

b = 1;
    echo $dy->b;
?>

这时看到:

you can get b1

PHP Fatal error:  Cannot access private property A::$b in /usercode/file.php on line 11

这里调用了__set函数并提示我们不能使用类的私有属性。
现在来通过__set函数实现外部使用私有属性:

$name=$val;
        }
        function B(){
            echo $this->b;
        }
    }
    $dy = new A();
    $dy->b = 1;
    $dy->B();
?>

看一下输出:

1

说明使用成功。

看完了这篇文章,相信你对PHP中外部调用类私有属性的方法有了一定的了解,想了解更多相关知识,欢迎关注创新互联成都网站设计公司行业资讯频道,感谢各位的阅读!

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


文章题目:PHP中外部调用类私有属性的方法-创新互联
标题来源:http://scjbc.cn/article/esoje.html

其他资讯