PHP类的封装_PHP_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > PHP > PHP类的封装

PHP类的封装

 2018/3/25 23:47:10  青春..荒唐  程序员俱乐部  我要评论(0)
  • 摘要:【前言】本文总结下类的封装性【主体】类的封装性封装性:类中的某些方法或属性不允许外部调用可以通过开放部分接口来间接调用,写个简单例子<?phpclassHuman{//方法名和类名一致时会被理解为构造方法publicfunctionaa(){echo"调用1";}publicfunction__construct(){//通过调用构造函数来间接调用方法aa()$this->aa();//我是内部调用}}$a=newHuman();//我是外部调用?>类似于ATM机
  • 标签:PHP PHP类

【前言】

? ? 本文总结下类的封装性

?

【主体】

类的封装性

封装性:类中的某些方法或属性不允许外部调用

可以通过开放部分接口来间接调用,写个简单例子

class="php"><?php
    class Human{
        //方法名和类名一致时会被理解为构造方法
        public function aa(){
            echo "调用1";
        }
        public function __construct(){//通过调用构造函数来间接调用方法aa()
            $this -> aa();//我是内部调用
        }
    }
    $a = new Human();//我是外部调用
?>

?

类似于ATM机,只能输入密码,而不能查询。因为这里只开放了输入对比的接口

不封装的缺点:可以在外部调用获取内部函数或变量,安全性

<?php
    class Atm{
        //返回数据库存储的密码
        public function getPwd(){
            return '123456';
        }
        //对比密码
        public function checkPwd($pwd){
            return $this -> getPwd() == $pwd;
        }
    }
    $atm = new Atm();
    //不封装时在外部会可以调用到内部函数,获取密码
    echo '存储密码为'.$atm->getPwd()."<br>";
    if($atm -> checkPwd('123456')){
        echo "密码输入正确";
    }else{
        echo "密码输入错误";
    }
?>

?

为了封装函数,保护重要数据。将返回数据库存储密码的行的权限改为protected(保护),则该函数便被封装了起来

通过调用公共接口即可间接调用方法

      //返回数据库存储的密码
        protected function getPwd(){
            return '123456';
        }

?

?

?

?

?

.

上一篇: PHP知识点补漏 下一篇: 没有下一篇了!
发表评论
用户名: 匿名