[PHP]对象数组和普通数组总结

1.碰到前台将JSON格式数据传递到服务器后台,经php的json_decode函数转换成的数组由于为对象数组,php程序无法对数据进行正常处理的情况,为此需要开发一个PHP回调函数(objarray_to_array)将对象数组转换成普通数组。

代码如下:

//对象数组转普通数组

function object_to_array($obj){
  $_arr = is_object($obj) ? get_object_vars($obj) :$obj;
  foreach ($_arr as $key=>$val){
   $val = (is_array($val) || is_object($val)) ? $this->object_to_array($val):$val;
   $arr[$key] = $val;
  }
  return $arr;
 }

2.关于数组转换或提取数据内容,代码如下:

function objarray_to_array($str) {
$str=str_replace("{", "", $str);
$str=str_replace("}", "", $str);
$str=str_replace("[", "", $str);
$str=str_replace("]", "", $str);
$str=str_replace(":", ":", $str);
$str=str_replace(""", "", $str);
$userInfo = array( );
$info =explode(',', $str);

foreach ($info as $key => $value) {
$obj = trim($value);
$obj1 = explode(':', $obj);
$key=$obj1[0];
$value=$obj1[1];
$userInfo[$key]=$value;
}
return $userInfo;
}