LonghornPHP 2026

get_mangled_object_vars

(PHP 7 >= 7.4.0, PHP 8)

get_mangled_object_varsВозвращает массив искажённых свойств объекта

Описание

function get_mangled_object_vars(object $object): array

Функция возвращает массив (array ), элементы которого — свойства объекта. Ключами массива будут имена переменных-членов, с рядом примечательных исключений: в начало имён закрытых переменных добавляется имя класса; в начало имён защищённых переменных — символ *. Функция также добавит NUL-байты слева и справа от звёздочки и имени класса. Неинициализированные типизированные свойства автоматически отбрасываются.

Список параметров

object

Экземпляр объекта.

Возвращаемые значения

Функция возвращает массив (array ), который содержит свойства объекта object. Функция добавит в массив каждое свойство класса, независимо от модификатора видимости свойства.

Примеры

Пример #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)
}

Смотрите также

  • get_class_vars() - Получает свойства класса, которые объявили по умолчанию
  • get_object_vars() - Возвращает свойства указанного объекта

Нашли ошибку?

ИнструкцияИсправлениеСообщение об ошибке
+Добавить

Примечания пользователей

Пользователи ещё не добавляли примечания для страницы

AltStyle によって変換されたページ (->オリジナル) /