j! dump: Как отслеживать, где определен класс?
Я начинаю разработку PHP и Joomla Core. Это большое расширение помогает мне во время обучения. Очень частая ситуация, когда я пытаюсь понять какой-то код, есть метод класса, вызываемого в строке, и я хочу изучить определение класса, но понятия не имею, где оно находится. Перед j! Dump мне пришлось загрузить расширение в вопросе и в текстовом поиске класса, что занимает много времени. Я считаю, что эта простая цель может быть достигнута с помощью j! Dump, но я не знаю, как это сделать. Это выглядит следующим образом:
$messages = modPimediaplayerHelper::getStudy($params);
Эта строка находится в файле PHP модуля, я хотел бы знать, где этот modPimediaplayerHelper
определен, я пробовал dump(modPimediaplayerHelper)
и dump(modPimediaplayerHelper::getStudy)
, оба они не работа, так что мне делать?
Кстати, когда я пытаюсь dump($params)
, он возвращает объект без значимых свойств, но только методы, которые провоцируют меня на просмотр как этот объект $ params также определен, как использовать J! dump для его отслеживания?
2 ответа
Вы не можете определить, где класс определен с помощью JDump
Вы можете узнать, изнутри выполняемого метода, используя dumpTrace (); , но не вне класса.
Чтобы получить то, что вам нужно, попробуйте это; https://stackoverflow.com/вопросы /2420066 /выяснение-PHP-файл, в перспективе времени, где-а-класс был определенный
Кстати, вы посетили бэкэнд Joomla JDump? /administrator/index.php?option=com_dump Существует несколько вариантов JDump, которые могут быть полезны в других случаях.
Поскольку вы имеете в виду модуль, который (по моему мнению), самый простой тип расширения, я отвечу на это только для модуля.
В большинстве модулей есть файл helper.php , который содержит функцию, которая извлекает данные, которые будут отображаться в выводе модуля, и, в основном, все, что происходит за кулисами.
Здесь будет определен ваш класс modPimediaplayerHelper
.
Итак, вам просто нужно посмотреть в следующем каталоге:
ROOT /модули /mod_pmedia_player_helper /helper.php
Примечание: Я использовал mod_pmedia_player_helper
в пути как предположение. Это может быть немного иначе, но определенно что-то в этом роде.
Надеюсь, что это поможет