get_mangled_object_vars
(PHP 7 >= 7.4.0, PHP 8)
get_mangled_object_vars — Retorna um array de nomes únicos e valores das propriedades do objeto
Descrição
Retorna um array cujos elementos são as propriedades de object
.
As chaves são os nomes das variáveis membras, com algumas exceções
notáveis: variáveis privadas têm o nome da classe prefixada ao nome da variável,
e variáveis protegidas têm um *
prefixado ao nome da variável.
Estes valores prefixados têm bytes NUL
de cada um dos lados.
Propriedades tipadas
não inicializadas são silenciosamente descartadas.
Parâmetros
object
-
Uma instância de objeto.
Valor Retornado
Retorna um array contendo todas as propriedades de object
, independente da visibilidade.
Exemplos
Example #1 Exemplo de 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));
O exemplo acima produzirá:
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) }
Veja Também
- get_class_vars() - Obtém as propriedades padrão da classe
- get_object_vars() - Obtém as propriedades de um objeto