扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
可以用函数get_object_vars将对象转换为属性组成的关联数组,其语法如下:
公司主营业务:成都网站设计、成都网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。成都创新互联公司是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。成都创新互联公司推出顺城免费做网站回馈大家。
$arr1=get_object_vars($obj);//$obj为需要转换的对象,下同
也可以用强制类型转换,如:
$arr1=(array)$obj;
或者这样:
$arr1=settype($obj,"array");
你这种写法更适合想要把私有或者保护的属性取出来。
如果只是公有属性,完全可以使用更方便的做法:
$res = json_decode(json_encode($obj),true);
$obj是原始对象,$res则是数组了。
这里定义2个php匿名对象和数组相互转换的函数,代码如下:
function array2object($array) {
if (is_array($array)) { $obj = new StdClass(); foreach ($array as $key = $val){ $obj-$key = $val; } } else { $obj = $array; } return $obj;}function object2array($object) { if (is_object($object)) { foreach ($object as $key = $value) { $array[$key] = $value; } } else { $array = $object; } return $array;}
用法示例如下:
$array = array('foo' = 'bar','one' = 'two','three' = 'four');$obj = array2object($array);print $obj-one; // output's "two"$arr = object2array($obj);print $arr['foo']; // output's bar
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流