• 技术文章 >后端开发 >php教程

    PHP权限控制的bug详解

    小云云小云云2018-03-31 13:07:58原创765
    本文主要和大家分享PHP权限控制的bug详解,主要以文字和代码的方式和大家分享,希望能帮助到大家。

    class Human {
        private $money = 1000;    public function getMoney($people) {
            return $people->money;
        }    public function setMoney($people) {
            $people->money -= 500;
        }
    }$zhangsan = new Human();$lisi = new Human();//echo $lisi->money; //报错// 让李四去打探张三的钱echo $lisi->getMoney($zhangsan),'<br >'; //1000// 让李四去改变张三的钱$lisi->setMoney($zhangsan); //减500echo $lisi->getMoney($zhangsan),'<br >'; //剩500
    /* 
    按理来说,李四不应该有权直接引用 张三私有的
    但是,在上面的代码中,李四却显然引用和改张三的钱. 
    这是因为: 
    PHP在实现上,并不是以对象为单位来控制的权限. 
    而是以类为单位,来控制的权限.
    所以我们强调的是类内,类外,而不是对象内,对象外. 
    */
    /* 
    $lisi–>类–>Human类 
    $lisi->setMoney()函数,也在Human类中, 
    在同一个类内部,可以调用.
    这也说明了,确实是以类为单位的. 
    */
    class Human {
        private $money = 1000;    public function getMoney($people) {
            return $people->money;
        }    public function setMoney($people) {
            $people->money -= 500;
        }
    }$zhangsan = new Human();$lisi = new Human();//echo $lisi->money; //报错// 让李四去打探张三的钱echo $lisi->getMoney($zhangsan),'<br >'; //1000// 让李四去改变张三的钱$lisi->setMoney($zhangsan); //减500echo $lisi->getMoney($zhangsan),'<br >'; //剩500

    /*
    按理来说,李四不应该有权直接引用 张三私有的

    但是,在上面的代码中,李四却显然引用和改张三的钱.
    这是因为:
    PHP在实现上,并不是以对象为单位来控制的权限.
    而是以类为单位,来控制的权限.

    所以我们强调的是类内,类外,而不是对象内,对象外.
    */

    /*
    $lisi–>类–>Human类
    $lisi->setMoney()函数,也在Human类中,
    在同一个类内部,可以调用.

    这也说明了,确实是以类为单位的.
    */

    相关推荐:

    PHP面向对象之private权限控制_PHP教程

    php入门到就业线上直播课:查看学习

    以上就是PHP权限控制的bug详解的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

    前端(VUE)零基础到就业课程:点击学习

    清晰的学习路线+老师随时辅导答疑

    自己动手写 PHP MVC 框架:点击学习

    快速了解MVC架构、了解框架底层运行原理

    专题推荐:php 详解 控制
    上一篇:PHP用FTP上传文件出现警告如何解决 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • ❤️‍🔥共22门课程,总价3725元,会员免费学• ❤️‍🔥接口自动化测试不想写代码?• 总结ElasticSearch基本操作!非常详细!• PHP网页UTF8编码开发中空白的问题_PHP教程• PHP经常容易记乱的知识_PHP教程• php+ajax文章自动保存代码实例方法_PHP教程• 50条规则提高PHP开发提高效率技巧_PHP教程
    1/1

    PHP中文网