亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

后期靜態(tài)綁定十分靈活

オリジナル 2019-05-11 18:14:39 196
サマリー://重載技術(shù)//重載:動(dòng)態(tài)的創(chuàng)建類屬性和方法//屬性重載//__set(),__get(),__isset(),__unset()//const IS_ISSET = true;//const IS_GET = true;//const IS_SET = true;//const IS_UNSET = false;////class Visit//{//    protecte

//重載技術(shù)
//重載:動(dòng)態(tài)的創(chuàng)建類屬性和方法
//屬性重載
//__set(),__get(),__isset(),__unset()
//const IS_ISSET = true;
//const IS_GET = true;
//const IS_SET = true;
//const IS_UNSET = false;
//
//class Visit
//{
//    protected $data = [];
//
//    public function __isset($name)//在判斷是否存在時(shí)自動(dòng)執(zhí)行
//    {
//        return IS_ISSET && isset($this->data[$name]);
//    }
//
//    public function __get($name)//外部對(duì)內(nèi)部的值進(jìn)行訪問時(shí)自動(dòng)執(zhí)行
//    {
//        return IS_GET ? $this->data[$name] : '非法訪問';
//    }
//
//    public function __set($name, $value)//對(duì)對(duì)象的成員進(jìn)行賦值是自動(dòng)調(diào)用
//    {
//        IS_SET ? $this->data[$name] = $value : '禁止賦值';
//    }
//
//    public function __unset($name)//在外部對(duì)內(nèi)部成員進(jìn)行銷毀時(shí)自動(dòng)調(diào)用
//    {
//        if (IS_UNSET) {
//            unset($this->data[$name]);
//        } else {
//            echo '禁止刪除';
//        }
//    }
//}
//
//$visit = new Visit();
//if (isset($visit->table)) {
//    echo $visit->table . '<br>';
//} else {
//    $visit->table = 'table_staff';
//}
//
////訪問
//echo $visit->table . '<br>';
//
////更新
//$visit->table = '員工表' . '<br>';
//
////訪問
//echo $visit->table . '<br>';
//
//unset($visit->table);

//方法重載
//_call(),_callStatic()
class Site
{
   public function show($argumnets)
   {
       $title = func_get_arg(0);//獲取方法中的參數(shù)
       $desc = func_get_arg(1);
       return 'Site::show()<br>站點(diǎn)名稱' . $title . '<br>站點(diǎn)描述:' . $desc;
   }

   public static function add($argument)
   {
       $m = func_get_arg(0);
       $n = func_get_arg(1);
       return 'Site::add()<br>'.$m.'+'.$n.'='.($m+$n);
   }
}

class Web
{
   //當(dāng)訪問一個(gè)不存在的動(dòng)態(tài)方法的時(shí)候會(huì)自動(dòng)調(diào)用,$name為方法名,$arguments為參數(shù)
   public function __call($name, $arguments)
   {
//        return '方法:'.$name.'<br>參數(shù)列表:'.var_export($arguments,true);
       //方法重載更多的用在跨類的方法調(diào)用上,第一個(gè)參數(shù)為一個(gè)數(shù)組,數(shù)組的第一個(gè)值為要訪問的類的實(shí)例化,第二個(gè)值為調(diào)用的訪問類的方法,第二個(gè)參數(shù)為傳給該方法的值
       return call_user_func_array([(new Site),'show'],$arguments);
   }

   //當(dāng)訪問一個(gè)不存在的靜態(tài)方法的時(shí)候會(huì)自動(dòng)調(diào)用,$name為方法名,$arguments為參數(shù)
   public static function __callStatic($name, $arguments)
   {
       //跨類調(diào)用一個(gè)靜態(tài)方法
       return call_user_func_array(['Site','add'],$arguments);
   }

}

$web = new Web();

//訪問一個(gè)不存在的方法
echo $web->show('李銘煒','牛逼').'<hr>';
echo Web::add('1','2');

添削の先生:天蓬老師添削時(shí)間:2019-05-13 09:31:40
先生のまとめ:所謂重載, 其實(shí)就是對(duì)類中方法和屬性的重載, 要注意重載 與重寫的區(qū)別, 重載是發(fā)生在外部訪問時(shí)發(fā)生, 而重寫則在是繼承的上下文環(huán)境中

手記を発表する

人気のある見出し語(yǔ)