Statement on glibc/iconv Vulnerability

get_mangled_object_vars

(PHP 7 >= 7.4.0, PHP 8)

get_mangled_object_varsKarışık nesne özelliği dizisi döndürür

Açıklama

get_mangled_object_vars(object $nesne): array

nesne'nin özelliklerini eleman olarak içeren bir dizi döndürür. Anahtarlar üye değişken isimleridir, bir kaç istisna dışında: Private değişken isimleri ismi önceleyen sınıf isimlerine sahipken protected değişken isimleri * ile öncelenir. Başa eklenen bu değerlerin yerini diğer tarafta NUL baytlar alır. İlklendirilmemiş tür belirtimli özellikler sessizce devre dışı bırakılır.

Bağımsız Değişkenler

nesne

Bir sınıfın örneği.

Dönen Değerler

nesne'nin görünürlüğüne aldırmadan tüm özellikleri içeren bir dizi döner.

Örnekler

Örnek 1 - get_mangled_object_vars() örneği

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

Yukarıdaki örneğin çıktısı:

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

Ayrıca Bakınız

add a note

User Contributed Notes

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