您的位置:首页 > 编程语言 > PHP开发

PHP魔术方法之__set_state()

2016-10-25 21:26 288 查看
更多内容请访问PHP图库

<?php
//  PHP魔术方法之__set_state()
//该方法的唯一参数是一个数组,其中包含array('property'=>value,...)格式排列的属性
class A
{
public $var1;
public $var2;

public static function __set_state($an_array) // As of PHP 5.1.0
{
$obj = new A;
$obj->var1 = $an_array['var1'];
$obj->var2 = $an_array['var2'];
return $obj;
}
}

$a = new A;
$a->var1 = 5;
$a->var2 = 'foo';

eval('$b = ' . var_export($a, true) . ';'); // $b = A::__set_state(array(
//    'var1' => 5,
//    'var2' => 'foo',
// ));
var_dump($b);
?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php
相关文章推荐