클래스/객체 get_mangled_object_vars

(PHP 7 >= 7.4.0, PHP 8)

get_mangled_object_vars — 맹글링된 객체 속성의 배열을 반환합니다.


설명

get_mangled_object_vars(object $object): array

요소가 object의 속성인 배열을 반환합니다. 키는 멤버 변수 이름이지만 몇 가지 주목할 만한 예외가 있습니다. 개인 변수에는 변수 이름 앞에 클래스 이름이 추가되고 보호 변수에는 변수 이름 앞에 *가 추가됩니다. 이러한 추가 값은 양쪽에 NUL 바이트가 있습니다. 초기화되지 않은 typed properties은 자동으로 삭제됩니다.


매개변수

object
개체 인스턴스입니다.

반환 값

가시성에 관계없이 object의 모든 속성을 포함하는 배열을 반환합니다.


Examples

예제 #1 get_mangled_object_vars() 예제

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

기타