PHP三大特性

一、封装
目的:为了让类更加安全
方法:

1.将成员变量变为私有
2.做一个成员方法来间接访问
3.在该方法里面加限制性条件

class ren
{
private $name;
private $age;

function setname($n)
{
$this->name=$n;
}
function getname()
{
return $this->name;
  }
}

$r=new ren();

$r->setname("张三");

echo $r->getname();

以上这种方法,如果成员变量数量较多的话,写起来会很麻烦,因为每个变量都要写两个方法,所以在实际操作过程中不建议使用。

class ren
{
private $name;
private $age;
魔术方法,给变量赋值
function __set($n,$v)
{
if($n=="age")
{
if($v>=18&&$v<=50)
{
$this->$n=$v;
  }
}

else

{

$this->$n=$v;

  }
}
魔术方法,取变量
function __get($n)
{
return $this->$n;
}

$r->__set("age",20);
$r->age = 20;

以上是运用了Php的两种魔术方法,创建变量和取得变量,这两种方法在遇到成员变量众多的情况下也可以轻松解决,不必重复两种方法。
二、继承
子类可以继承父类的一切
特点:单继承,一个子类只能有一个父类,一个父类可以有多个子类。

class ren
{
public $name;(privted只能在父类访问)
function run()
{
echo "跑步";
}
}
class china extends ren
{
重写 override
function run()
{
parent::run();调用父类run方法
echo "中国人跑步";
}
}
$c=new china();
$c->run();

三、多态(一般php的多态表现不出来)

原文地址:https://www.cnblogs.com/zqld/p/6739196.html