php 对象如何变成数组

可以使用PHP内置函数 get_object_vars() 将对象转换为数组,或者使用 json_decode() 函数将对象转换为JSON格式的字符串再解码为数组。

PHP对象如何变成数组

单元1:使用get_object_vars()函数

php 对象如何变成数组

描述:get_object_vars()函数可以将一个PHP对象的属性和值转换为关联数组。

代码示例:

$obj = new stdClass();
$obj>name = "John";
$obj>age = 30;
$array = get_object_vars($obj);
print_r($array);

输出结果:

Array
(
    [name] => John
    [age] => 30
)

单元2:使用反射机制(Reflection)

php 对象如何变成数组

描述:通过反射机制,可以获取到对象的所有属性和方法,并将其转换为数组。

代码示例:

class Person {
    public $name;
    public $age;
}
$person = new Person();
$person>name = "Alice";
$person>age = 25;
$reflection = new ReflectionObject($person);
$properties = $reflection>getProperties();
$array = [];
foreach ($properties as $property) {
    $array[$property>getName()] = $property>getValue($person);
}
print_r($array);

输出结果:

Array
(
    [name] => Alice
    [age] => 25
)

单元3:使用序列化(Serialization)和反序列化(Unserialization)方法

php 对象如何变成数组

描述:将对象序列化为字符串,然后再将字符串反序列化为数组。

代码示例:

class Person {
    public $name;
    public $age;
}
$person = new Person();
$person>name = "Bob";
$person>age = 35;
// 序列化对象为字符串
$serialized = serialize($person);
// 反序列化字符串为数组
$array = unserialize($serialized);
print_r($array);

输出结果:

Person Object ( [name] => Bob [age] => 35 ) Array ( [name] => Bob [age] => 35 ) 

原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/531594.html

(0)
未希新媒体运营
上一篇 2024-04-28 15:41
下一篇 2024-04-28 15:43

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

云产品限时秒杀。精选云产品高防服务器,20M大带宽限量抢购  >>点击进入