get_mangled_object_vars

(PHP 7 >= 7.4.0, PHP 8)

get_mangled_object_varsReturns an array of mangled object properties

Description

get_mangled_object_vars(object $object): array

Returns an tableau 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.

Liste de paramètres

object

An object instance.

Valeurs de retour

Returns an tableau containing all properties, regardless of visibility, of object.

Exemples

Exemple #1 get_mangled_object_vars() example

<?php

class A
{
    public 
$public 1;

    protected 
$protected 2;

    private 
$private 3;
}

class 
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));

L'exemple ci-dessus va afficher :

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)
}

Voir aussi