首页 >后端开发 >PHP问题 > 正文

php怎么将object转化为数组

原创2021-06-09 18:44:450394

php将object转化为数组的方法:1、利用强制类型转换,语法“(array)Object变量”;2、利用get_object_vars()函数,语法“get_object_vars (object变量)”。

本教程操作环境:windows7系统、PHP7.1版,DELL G3电脑

方法1:利用强制类型转换--在要转换的变量之前加上用括号括起来的目标类型“(array)”

示例:object强制类型转换为array

<?php
class foo
{
    function do_foo()
    {
        echo "Doing foo."; 
    }
}

$bar = new foo;
$bar->do_foo();
print_r((array)$bar);
?>

输出:

Doing foo.Array ( )

扩展资料:

允许转换的PHP数据类型有:

  • (int)、(integer):转换成整形

  • (float)、(double)、(real):转换成浮点型

  • (string):转换成字符串

  • (bool)、(boolean):转换成布尔类型

  • (array):转换成数组

  • (object):转换成对象

方法2:使用get_object_vars()函数

get_object_vars — 返回由对象属性组成的关联数组。语法格式:

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
 )

推荐学习:《PHP视频教程

以上就是php怎么将object转化为数组的详细内容,更多请关注php中文网其它相关文章!

php中文网最新课程二维码

声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理

  • 相关标签:php object 数组
  • 相关文章

    相关视频


    网友评论

    文明上网理性发言,请遵守 新闻评论服务协议

    我要评论
  • 专题推荐

    作者信息

    青灯夜游

    今天学习一小步,明天提升一大步

    推荐视频教程
  • PHP开发基础之数组篇PHP开发基础之数组篇
  • PHP开发基础之类与对象篇PHP开发基础之类与对象篇
  • 细说PHP(2021版)第一季细说PHP(2021版)第一季
  • 细说PHP(2021版)第二季细说PHP(2021版)第二季
  • 细说PHP(2021版)第三季细说PHP(2021版)第三季
  • 细说PHP(2021版)第四季细说PHP(2021版)第四季
  • 视频教程分类