1、强制转换对象为数组
$arr = (array)$obj;
如下例子转换结果:
用print_r打印出对象
stdClass Object
(
[name] => main
[text] =>
[parrent] =>
[content] =>
[props] => Array
(
)
[inner] => Array
(
)
[level] => 0
)
强制转换后的数组
Array
(
[name] => main
[text] =>
[parrent] =>
[content] =>
[props] => Array
(
)
[inner] => Array
(
)
[level] => 0
)
方法二:用stdClass转换数组为对象
$arr = array();
$arr['a'] = 1;
$arr['b'] = 2;
$arr['c'] = 3;
用stdClass转换后:
$object = new StdClass;
$object->a = 1;
$object->b = 2;
$object->c = 3;
stdClass是PHP的一个基类,所有的类几乎都继承这个类,所以任何时候都可以被new,可以让这个变量成为一个object。同时,这个基类又有一个特殊的地方,就是没有方法。
3、一个类:ArrayObject,可以直接将数组转化为对象
$array = array('1' => 'one',
'2' => 'two',
'3' => 'three');
$arrayobject = new ArrayObject($array);
var_dump($arrayobject);
结果:
object(ArrayObject)#1 (3) {
[1]=>
string(3) "one"
[2]=>
string(3) "two"
[3]=>
string(5) "three"
}