PHP中__unset()方法详解-php教程

资源魔 18 0
__unset(),当对不成拜访属性挪用unset()时被挪用。

看这个办法以前呢,咱们也先来看一下 unset() 函数,unset()这个函数的作用是删除了指定的变量且传回true,参数为要删除了的变量。

那末假如正在一个工具内部去删除了工具外部的成员属性用unset()函数能够吗?

这里天然也是分两种状况:

一、 假如一个工具外面的成员属性是私有的,就能够应用这个函数正在工具里面删除了工具的私有属性。

二、 假如工具的成员属性是公有的,我应用这个函数就不权限去删除了。

尽管有以上两种状况,但我想说的是一样假如你正在一个工具外面加之__unset()这个办法,就能够正在工具的内部去删除了工具的公有成员属性了。正在工具外面加之了__unset()这个办法之后,正在工具内部应用“unset()”函数删除了工具外部的公有成员属性时,工具会主动挪用__unset()函数来帮咱们删除了工具外部的公有成员属性。

请看以下代码:

<?php
class Person
{
    public $sex;
    private $name;
    private $age;
    public function __construct($name="",  $age=25, $sex='男')
    {
        $this->name = $name;
        $this->age  = $age;
        $this->sex  = $sex;
    }
    /**
     * @param $content
     *
     * @return bool
     */
    public function __unset($content) {
        echo "当正在类内部应用unset()函数来删除了公有成员时主动挪用的<br>";
        echo  isset($this->$content);
    }
}
$person = new Person("小明", 25); // 初始赋值
unset($person->sex);
unset($person->name);
unset($person->age);

运转后果:

当正在类内部应用unset()函数来删除了公有成员时主动挪用的
1当正在类内部应用unset()函数来删除了公有成员时主动挪用的
1

以上就是PHP中__unset()办法详解的具体内容,更多请存眷资源魔其它相干文章!

标签: php开发教程 php开发资料 php开发自学 unset()

抱歉,评论功能暂时关闭!