📜  php 将对象中的所有内容作为数组获取 - PHP (1)

📅  最后修改于: 2023-12-03 15:03:42.055000             🧑  作者: Mango

PHP 将对象中的所有内容作为数组获取

在 PHP 中,我们可以使用类型转换将对象转换为数组。以下是通过使用 type casting 将对象转换为数组的示例代码:

<?php
class User {
    public $id;
    public $name;
    public $email;

    public function __construct($id, $name, $email) {
        $this->id = $id;
        $this->name = $name;
        $this->email = $email;
    }
}

$user = new User(1, 'John Doe', 'johndoe@example.com');
$userArray = (array) $user;

print_r($userArray);

输出结果:

Array
(
    [id] => 1
    [name] => John Doe
    [email] => johndoe@example.com
)

在上面的示例中,我们创建了一个用户对象,然后使用类型转换将其转换为数组。该数组包含用户对象的所有属性。

可以使用强制类型转换符将对象转换为数组。例如,(array) $object 将对象转换为数组。将返回的值存储在变量中并使用 print_r() 函数打印数组。

使用 get_object_vars() 函数

PHP 中提供了 get_object_vars() 函数,使用此函数可以更简便地将对象转换为数组。使用此函数返回包含对象成员变量与值的关联数组。

<?php
class User {
    public $id;
    public $name;
    public $email;

    public function __construct($id, $name, $email) {
        $this->id = $id;
        $this->name = $name;
        $this->email = $email;
    }
}

$user = new User(1, 'John Doe', 'johndoe@example.com');
$userArray = get_object_vars($user);

print_r($userArray);

输出结果:

Array
(
    [id] => 1
    [name] => John Doe
    [email] => johndoe@example.com
)

在上面的示例中,我们定义了一个用户类并创建了一个用户对象。然后,我们使用 get_object_vars() 函数将该对象转换为数组。最后,我们使用 print_r() 函数打印所得到的数组。

总结:

  • PHP 中可以使用类型转换符将对象转换为数组
  • 也可以使用 get_object_vars() 函数将对象转换为数组
  • 这些方法让我们可以轻松地获取对象的属性值,并在需要时以数组形式使用