Есть ли эквивалент var_dump для методов в PHP?
Я работаю над устаревшим кодом, и мне нужно получить некоторую информацию от объекта. Цена, например. Цена может быть сохранена в переменной или может быть получена с помощью метода. Я пока не знаю, только то, что он существует внутри объекта.
Я могу взять объект в коде и var_dump всех переменных, чтобы взглянуть на то, что доступно в тот момент во время выполнения. Но иногда то, что мне нужно, не возвращается
$item->price
но вместо этого должен быть найден
$item->get_price()
Мне кажется, было бы очень полезно иметь возможность вывести информацию из методов так же, как я могу вывести информацию из переменных.
Поэтому в идеале я бы вставил эту команду в код, и она бы минимально возвращала список всех методов, которые могут быть вызваны для объекта. В идеале, если эти методы не имеют входных данных, они также будут возвращать свои возвращаемые значения.
Существует ли такая команда в PHP? На каком языке?
1 ответ
Вы должны написать свой собственный.
Взгляни на get_class_methods
, Вам нужно иметь имя класса для этого. Вы можете получить это по get_class
,
Итак, вы хотите представить что-то вроде этого в вашей библиотеке:
function getObjectMethods(object $obj) {
$className = get_class($obj);
return get_class_methods($className);
}
Возможно, вам стоит подумать о лучшей IDE, которая поддерживает подсказки типов и т. Д. Посмотрите, например, на PHPStorm.