关于类中方法和属性重载技术课后案例

原创2018-12-05 14:09:5272
摘要:php类与对象差不多写完,由于基础不扎实,开始听着有点蒙,代码多了后容易打错字,等写完这科目后还续多听多练,以下是今天的作业,写的不太好,辛苦老师了<?php const IS_SET = true; const IS_GET = true; const IS_ISSET = true; const&n

php类与对象差不多写完,由于基础不扎实,开始听着有点蒙,代码多了后容易打错字,等写完这科目后还续多听多练,以下是今天的作业,写的不太好,辛苦老师了

<?php
const IS_SET = true;
const IS_GET = true;
const IS_ISSET = true;
const IS_UNSET = false;

class Vistit
{
	//添加一个空属性
	protected $deta = [];
   

   // 检测属性是否不可访问
   public function __isset($name)
   {
   	return IS_ISSET && isset($this->deta[$name]);
   }

  //不可访问时,执行该语句
  public function __get($name)
  {
  	return IS_GET ? $this->deta[$name] : '不可访问';
  }

 
  public  function __set($name,$value)
  {
  	IS_SET ? $this->deta[$name] = $value : '禁止赋值';
  }
  
  public function __unset($name)
  {
  	if(IS_UNSET)
  	{
  		unset($this->deta[$name]);
  	}
  	else
  	{
  		echo '禁止销毁该信息';
  	}
  }
}


$vistit = new Vistit();
if (isset($vistit->table))
{
	echo $vistit->table,'<br>';
}
else
{
	$vistit->table = '尚未添加员工信息';

}

//访问该属性
echo $vistit->table,'<hr>';

//更新属性值
$vistit->table = '猪小花';
echo '该员工名字:'.$vistit->table,'<br>';

//离职后销毁该属性值
unset($vistit->table);
echo '删除该信息'.$vistit->table,'<hr>';

QQ截图20181205140819.png

批改老师:天蓬老师批改时间:2018-12-05 15:33:52
老师总结:作业完成的不错,代码中$deta是不是写错了?想写$data吧

发布手记

热门词条