get_mangled_object_vars
(PHP 7 >= 7.4.0, PHP 8)
get_mangled_object_vars — Returns an array of mangled object properties
说明
get_mangled_object_vars(object
$object
): array
Returns an array whose elements are the object
's
properties. The keys are the member variable names, with a few notable
exceptions: private variables have the class name prepended to the variable name,
and protected variables have a *
prepended to the variable name.
These prepended values have NUL
bytes on either side.
Uninitialized typed properties
are silently discarded.
参数
-
object
-
An object instance.
返回值
Returns an array containing all properties, regardless of visibility, of object
.
范例
示例 #1 get_mangled_object_vars() example
<?php
class A
{
public $public = 1;
protected $protected = 2;
private $private = 3;
}
class B extends A
{
private $private = 4;
}
$object = new B;
$object->dynamic = 5;
$object->{'6'} = 6;
var_dump(get_mangled_object_vars($object));
class AO extends ArrayObject
{
private $private = 1;
}
$arrayObject = new AO(['x' => 'y']);
$arrayObject->dynamic = 2;
var_dump(get_mangled_object_vars($arrayObject));
以上例程会输出:
array(6) { ["Bprivate"]=> int(4) ["public"]=> int(1) ["*protected"]=> int(2) ["Aprivate"]=> int(3) ["dynamic"]=> int(5) [6]=> int(6) } array(2) { ["AOprivate"]=> int(1) ["dynamic"]=> int(2) }

User Contributed Notes
There are no user contributed notes for this page.
备份地址:http://www.lvesu.com/blog/php/function.get-mangled-object-vars.php