(PHP 7 >= 7.4.0, PHP 8)
get_mangled_object_vars — Liefert ein Array mit aufbereiteten Objekteigenschaften
   Gibt ein Array zurück, dessen Elemente die Eigenschaften von
   object sind. Die Namen der Mitgliedsvariablen sind
   die Schlüssel, wobei ein paar Ausnahmen zu beachten sind: Bei privaten
   Variablen wird dem Variablennamen der Name der Klasse vorangestellt, bei
   geschützten Variablen ein *. Diese vorangestellten Werte
   haben auf beiden Seiten NUL-Bytes. Uninitialisierte
   typisierte Eigenschaften
   werden stillschweigend verworfen.
  
objectDie Instanz eines Objekts
   Gibt ein Array zurück, das alle Eigenschaften von
   object enthält, unabhängig von den Zugriffsrechten.
  
Beispiel #1 get_mangled_object_vars()-Beispiel
<?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));Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
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)
}
