Statement on glibc/iconv Vulnerability

get_mangled_object_vars

(PHP 7 >= 7.4.0, PHP 8)

get_mangled_object_varsLiefert ein Array mit aufbereiteten Objekteigenschaften

Beschreibung

get_mangled_object_vars(object $object): array

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.

Parameter-Liste

object

Die Instanz eines Objekts

Rückgabewerte

Gibt ein Array zurück, das alle Eigenschaften von object enthält, unabhängig von den Zugriffsrechten.

Beispiele

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

Siehe auch

add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top