【发布时间】:2015-04-03 19:24:09
【问题描述】:
有没有办法在调用这段代码的时候把一个对象序列化成一个数组:
class Obj {
private $prop;
public function __construct($v) {
$this->prop = $v;
}
}
$object = new Obj('value');
$result = (array) $object;
print_r($result);
// should display something like Array ( prop => value )
// via a magic function call in the object ?
一些 ArrayObject、Traversable 和其他东西可以帮助在 foreach、count() 等中使用对象。但是使用强制类型数组语法,我们能做什么呢?
谢谢
编辑 我发现这篇文章比我的问题更好地解释了:) Casting object to array - any magic method being called?
答案是:不,调用(array)$object时不能要求魔法方法
【问题讨论】: