zoukankan      html  css  js  c++  java
  • PHP之魔术方法

     

     

     PHP中的魔术方法:

    PHP的魔术方法主要是在特定的条件下执行相应的魔术方法。这和很多框架中的钩子函数有些类似,不同的是,钩子函数是在生命周期的某个周期内自动执行,而魔术方法是在触发某种条件下自动执行。

    PHP中常用的魔术方法有:set(),get(),call()等魔术方法。set()get()的使用情况是:一般情况下,我们在类的外部不能访问类里面的私有变量,但我们实在需要在类的外部访问类的私有变量(private)时,就可以使用set()get()方法,例如:

    class fruit

    {

        private $fruitName;

        private $color;

        public function __set($var,$val)

        {

            $this->$var = $val;

        }

        public function __get($var)

        {

            return $this->$var;

        }

    }

    $fruit = new Fruit();

    $fruit->fruitName = '苹果';

    echo $fruit->fruitName;

    这样就能在类的外边访问类的私有属性。

    __call的使用情况是:当我们调用的类的方法不存在的时候,自动执行__call方法,至于__call方法中怎么执行,看编码者的喜好。

    __call的存在意义主要在于:当我们调用一个类中不存在的方法时,不让系统报错,而是执行一段我们需要的逻辑。

  • 相关阅读:
    Docker 安装 MySQL
    Docker安装
    Thymeleaf语法总结
    SpringBoot总结之事务和AOP
    SpringBoot总结之Spring Data Jpa
    SpringBoot总结之属性配置
    Spring总结之SpringMvc下
    Spring总结之SpringMvc上
    Spring总结之事务
    在什么情况下使用@ResponseBody 注解?
  • 原文地址:https://www.cnblogs.com/ldy520/p/7891252.html
Copyright © 2011-2022 走看看