• 技术文章 >后端开发 >PHP问题

    php怎么将object转化为数组

    青灯夜游青灯夜游2021-06-09 18:44:45原创156

    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数据类型有:

    方法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中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理
    专题推荐:php object 数组
    上一篇:什么是PHP中正则表达式的函数?(使用详解) 下一篇:php中数组键值怎么进行转换
    VIP会员

    相关文章推荐

    • PHP中什么是元字符?我们该如何使用正则表达式的元字符?(附代码)• 在PHP中模式修正符有哪些?是如何使用的?(附详解)• PHP如何打印跟踪调试信息• 详细介绍php自带的缓存系统:APCu扩展• 让PHP能够调用C的函数:FFI扩展(附代码)• PHP中接收外部参数的方式有哪些• php中$GLOBALS的用法是什么

    全部评论我要评论

  • 取消发布评论发送
  • 1/1

    PHP中文网