PHP - 类/对象 get_mangled_object_vars() 函数



PHP 类/对象 **get_mangled_object_vars()** 函数用于返回一个包含混淆对象属性的数组。此函数允许访问所有属性,例如具有内部或特殊名称的属性。

语法

以下是 PHP 类/对象 **get_mangled_object_vars()** 函数的语法:

array get_mangled_object_vars ( object $object )

参数

此函数接受 **$object** 参数,它是您要从中获取混淆属性的对象。

返回值

**get_mangled_object_vars()** 函数返回一个关联数组,其中包含对象的属性,键表示属性的混淆名称。

PHP 版本

**get_mangled_object_vars()** 函数首次引入于 PHP 7.4.0,在 PHP 8 中也能轻松使用。

示例 1

此示例演示了如何使用 PHP 类/对象 **get_mangled_object_vars()** 函数提取并显示简单对象的混淆属性(私有和公有)。

<?php
   // Define a class here
   class MyClass {
      private $privateVar = 'Private';
      public $publicVar = 'Public';
   }
  
   $obj = new MyClass();
   $mangledVars = get_mangled_object_vars($obj);
   print_r($mangledVars);
?>

输出

以下是以下代码的结果:

Array
(
    ["MyClassprivateVar"] => Private
)

示例 2

在下面的 PHP 代码中,我们将使用 **get_mangled_object_vars()** 函数获取受保护属性的混淆名称。

<?php
   // Define a class here
   class MyClass {
      protected $protectedVar = 'Protected';
   }
  
   $obj = new MyClass();
   $mangledVars = get_mangled_object_vars($obj);
   print_r($mangledVars);
?> 

输出

这将生成以下输出:

Array
(
   ["*protectedVar"] => Protected
)

示例 3

此示例演示了如何从继承自父类的子类中使用 **get_mangled_object_vars()** 函数获取混淆属性。

<?php
   class ParentClass {
      private $parentPrivateVar = 'Parent Private';
   }
  
   class ChildClass extends ParentClass {
      private $childPrivateVar = 'Child Private';
   }
  
   $obj = new ChildClass();
   $mangledVars = get_mangled_object_vars($obj);
   print_r($mangledVars);
?> 

输出

这将创建以下输出:

Array
(
    ["ParentClassparentPrivateVar"] => Parent Private
    ["ChildClasschildPrivateVar"] => Child Private
)
php_function_reference.htm
广告
© . All rights reserved.