php对象转数组的函数-php教程

资源魔 25 0

对于php中想让工具以数组的方式拜访,这时候候就需求应用到get_object_vars()函数了。先来引见一下这个函数。

民间文档是这样诠释的:

array get_object_vars ( object $obj )

前往由 obj 指定的工具中界说的属性组成的联系关系数组。

举例:

<?php
class Point2D {
  var $x, $y;
  var $label;
  function Point2D($x, $y)
  {
    $this->x = $x;
    $this->y = $y;
  }
  function setLabel($label)
  {
    $this->label = $label;
  }
  function getPoint()
  {
    return array("x" => $this->x,
           "y" => $this->y,
           "label" => $this->label);
  }
}
// "$label" is declared but not defined
$p1 = new Point2D(1.233, 3.445);
print_r(get_object_vars($p1));
$p1->setLabel("point #1");
print_r(get_object_vars($p1));
?>

输入:

Array
 (
     [x] => 1.233
     [y] => 3.445
     [label] =>
 )
 Array
 (
     [x] => 1.233
     [y] => 3.445
     [label] => point #1
 )

工具转数组详细完成:

function objectToArray($obj) {
  //起首判别能否是工具
  $arr = is_object($obj) ? get_object_vars($obj) : $obj;
  if(is_array($arr)) {
    //这里相称于递归了一下,假如子元素仍是工具的话持续向下转换
    return array_map(__FUNCTION__, $arr);
  }else {
    return $arr;
  }
}

数组转工具的详细完成:

function arrayToObject($arr) {
  if(is_array($arr)) {
    return (object)array_map(__FUNCTION__, $arr);
  }else {
    return $arr;
  }
}

更多相干内容请拜访PHP中文网:PHP视频教程

以上就是php工具转数组的函数的具体内容,更多请存眷资源魔其它相干文章!

标签: php开发教程 php开发资料 php开发自学 php,对象,数组,转换

抱歉,评论功能暂时关闭!