PHP常用魔术方法(__set__get魔术方法:)

Posted 怪咖咖

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP常用魔术方法(__set__get魔术方法:)相关的知识,希望对你有一定的参考价值。

__set、__get魔术方法:


//文件名:Object.php
<?php
namespace IMooc;
class Object
{
protected $array = array();
function __set($name, $value)//set魔术方法
{
var_dump(__METHOD__);//输出当前方法

$this->array[$name]=$value;//$name=title,$value="哎哟喂"
}
function __get($name)//get魔术方法
{
var_dump(__METHOD__);//输出当前方法
return $this->array[$name];
}
}


//文件名:index.php
<?php

define(‘a‘,__DIR__);
include ‘/IMooc/Loader.php‘;
spl_autoload_register(\\IMooc\\Loader::autoload‘);


$Object = new \IMooc\Object();

$Object->title="哎哟喂";//当对不存在属性进行赋值时,它会调用__set魔术方法

echo $Object->title;//当读取对象不存在属性时,会调用__get魔术方法
/*输出:
string(19) "IMooc\Object::__set"
string(19) "IMooc\Object::__get"
哎哟喂
*/

 

以上是关于PHP常用魔术方法(__set__get魔术方法:)的主要内容,如果未能解决你的问题,请参考以下文章

php啥是魔术方法

PHP魔术法__set和__get

PHP 魔术方法之__set__get__unset__isset

php魔术方法

php魔术方法

PHP魔术方法