object在php中的应用,php中get_object_vars()在数组的实例用法

在php中有一些函数,是为了数组的使用而辅助的。本篇要提到的是get_object_vars(),咋子函数的名称上大家会觉得有些复杂,不过在返回关联数组上,是经常会用到的函数方法。下面我们对php中get_object_vars()的概念、语法、使用注意进行介绍,然后讲解在数组中的实例方法。

1、概念

获取$object对象中的属性,组成一个数组。

2、语法get_object_var($object)

3、使用注意

缺点,只转一维,不会递归

4、实例<?php

class person{

public $name="王美人";

public $age = 25;

public $birth;

}

$p = new person();

print_r(get_object_vars($p));

?>

输出结果Array ( [name] => 王美人 [age] => 25 [birth] => )

知识点扩展:

php get_object_vars($object) 返回由对象属性组成的关联数组<?php

class person{

public $name="王美人";

public $age = 25;

public $birth;

}

$p = new person();

print_r(get_object_vars($p));

运行结果Array ( [name] => 王美人 [age] => 25 [birth] => )

到此这篇关于php中get_object_vars()在数组的实例用法的文章就介绍到这了,更多相关php中get_object_vars()在数组的使用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果你要获取 PHP 对象(Object的属性(Property),可以使用 PHP 的魔术方法 __get()。这个方法会在试图获取一个未定义或不可见属性时自动调用。 示例代码: ```php class MyClass { private $myProperty = 'Hello'; public function __get($name) { if (property_exists($this, $name)) { return $this->$name; } else { return null; } } } $myObject = new MyClass(); echo $myObject->myProperty; // 输出:Hello ``` 如果你需要获取对象所有属性,包括私有属性,可以使用 `get_object_vars()` 函数。示例代码: ```php class MyClass { private $myProperty = 'Hello'; public $publicProperty = 'World'; } $myObject = new MyClass(); $vars = get_object_vars($myObject); print_r($vars); ``` 输出: ``` Array ( [myProperty] => Hello [publicProperty] => World ) ``` 如果对象包含其他对象,可以使用 `json_encode()` 将对象转换为 JSON 字符串,然后再使用 `json_decode()` 将字符串转换为数组,就可以获取对象的属性了。示例代码: ```php class SubClass { public $subProperty = 'Sub Value'; } class MyClass { public $myProperty = 'My Value'; public $subObject; public function __construct() { $this->subObject = new SubClass(); } } $myObject = new MyClass(); $jsonString = json_encode($myObject); $array = json_decode($jsonString, true); print_r($array); ``` 输出: ``` Array ( [myProperty] => My Value [subObject] => Array ( [subProperty] => Sub Value ) ) ``` 注意:使用 `json_encode()` 和 `json_decode()` 转换对象时,对象的私有属性将被忽略。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值