博客列表 >重载属性与重载方法

重载属性与重载方法

笑颜常开的博客
笑颜常开的博客原创
2019年03月31日 20:17:15646浏览

<?php
//class Demo05{
//    public function __call($name, $arguments)
//    {
//        // TODO: Implement __call() method.
//        return '方法名称:'.$name.'<br>参数列表:'.'<pre>'.print_r($arguments,true);
//    }
//    public static function __callStatic($name, $arguments)
//    {
//        // TODO: Implement __callStatic() method.
//        return '方法名称:'.$name.'<br>参数列表:'.'<pre>'.print_r($arguments,true);
//    }
//}
//$obj=new Demo05();
//echo $obj->getInfo01(10,20,30);
//echo '<hr>';
//echo Demo05::getInfo02('html','css','javascript');
//function sum($a,$b){
//    return $a.'+'.$b.'='.($a+$b);
//}
//echo sum(10,20).'<br>';
////以回调的方式来调用,将函数作为了一个函数的参数来调用
//echo call_user_func('sum',60,40);
//
////将参数放在一个数组中
//call_user_func_array('sum',[60,40]).'<br>';

//echo '<hr>';
//class Test{
//    public function sum($a,$b){
//        return $a.'+'.$b.'='.($a+$b);
//    }
//}
//$obj=new Test();
//echo $obj->sum(100,300).'<br>';
//echo call_user_func_array([$obj,'sum'],[35,45]).'<br>';
//echo call_user_func_array([new Test,'sum'],[30,45]).'<br>';
//class Test{
//    public static function sum($a,$b){
//        return $a.'+'.$b.'='.($a+$b);
//    }
//}
//echo Test::sum(10,30).'<br>';
//echo '类名是: '. Test::class.'<br>';
////echo call_user_func_array('Test::sum',[20,30]).'<br>';
//echo call_user_func_array([Test::class,'sum'],[20,30]).'<br>';
//class Demo04{
//    private $name;
//    private $salary;
//    protected $secret='朱老师和猪哥不是同一个人';
////    构造方法
//    public function __construct($a,$b)
//    {
//        $this->name=$a;
//        $this->salary=$b;
//    }
//
////    魔术方法:__set($name,$value):当设置未定义不可见属性时触发
//    public function __set($d, $e)
//    {
//        // TODO: Implement __set() method.
//        if ($d==='salary'){
//            return ($this->name==='admin')?$this->$d=$e:'无权查看';
//        }
//    }
//    //    魔术方法:__get($name):当获取未定义不可见属性时触发
//    public function __get($c)
//    {
////        $c:要访问的属性名称
//        // TODO: Implement __get() method.
//        return $this->$c;
////        if ($c==='secret'){
////            return ($this->name==='admin')?$this->$c:'无权查看';
////        }
//    }
////__isset($name)
////__unset($name)
//}
////$obj=new Demo04('朱老师',6666);
//$obj=new Demo04('admin',6666);
////echo $obj->name,'<br>';
////echo '工资是:',$obj->salary,'元<br>';
////echo $obj->secret,'<br>';
//$obj->salary=10000;
//echo '工资是:'.$obj->salary.'<br>';
////if (isset($obj->salary)){
////    echo '变量存在';
////}
///
echo '<hr>';
class Test{
   public static function sum($a,$b){
       return $a.'+'.$b.'='.($a+$b);
   }
}
echo Test::sum(10,30).'<br>';
echo call_user_func_array('Test::sum',[20,30]).'<br>';
echo call_user_func_array(['Test','sum'],[70,30]).'<br>';

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议