__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"
哎哟喂
*/

 

相关文章:

  • 2022-12-23
  • 2021-08-16
  • 2022-01-13
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-11-26
  • 2021-09-15
  • 2022-02-06
  • 2021-07-26
  • 2022-02-11
  • 2021-12-10
相关资源
相似解决方案