权限控制符共有三种类型:
-
public:公共的,类内类外均可访问.
-
protected:保护的,只有在本类和子类的内部可以访问.
-
private:私有的,只有在本类的内部可以访问.
<?php class people1{ public $age=6; } $a=new people1(); echo $a->age,'<br/>'; class People2{ private $money=1000; public function ShowMoney(){ return $this->money * 0.8; } } $lisi=new People2(); //echo $lisi->money;private是私有的,调用位置在people外,因此不能调用. echo $lisi->ShowMoney(),'<br/>'; class Human{ private $money=1000; private $bank=2000; public function getBank($num){ $this->bank-=$num; return $num; } public function send($much){ if($much>$this->money+$this->bank){ echo '没有那么多钱'; return false; }else if($much>$this->money){ $num=$much-$this->money; $this->money+=$this->getBank($num); $this->money-=$much; return $much; }else{ $this->money-=$much; return $much; } } public function showMoney(){ return $this->money; } public function showBank(){ return $this->bank; } } $lisi=new Human(); $m=$lisi->send(300); if($m){ echo'借了',$m,'元<br/>'; echo'零钱还剩下',$lisi->showMoney(),'元<br/>'; echo'银行还剩下',$lisi->showBank(),'元<br/>'; } $m=$lisi->send(2000); if($m){ echo'借了',$m,'元<br/>'; echo'零钱还剩下',$lisi->showMoney(),'元<br/>'; echo'银行还剩下',$lisi->showBank(),'元<br/>'; } $m=$lisi->send(1000); if($m){ echo'借了',$m,'元<br/>'; echo'零钱还剩下',$lisi->showMoney(),'元<br/>'; echo'银行还剩下',$lisi->showBank(),'元<br/>'; } ?>
运行结果: