RSS   Twitter   Copiny   Copiny
Нашел ошибку? 

Выдели фрагмент текста с ошибкой или неточностью и нажми Ctrl+Enter!

JDump — отладка расширений в Joomla

отлаживать расширения — одно удовольствие

JDump — отладка расширений в Joomla

Обычно разработчики используют для отладки стандартные функции print_r() и var_dump(). Да, они показывают все содержимое переменной, но вывод приходится обрамлять тегами <pre></pre> и в итоге мы получаем искаженный внешний вид сайта, свалку свойств, "километровую" прокрутку и.т.д. В итоге - убийство времени и сил на "черную работу".

Утилита J!Dump делает жизнь простого программиста проще. Фактически плагин добавляет новый функционал к ядру Joomla. Вся интересующая нас информация теперь будет выводиться в аккуратно оформленном всплывающем окне.

Установка J!Dump

Подходит для Joomla 1.5.x - 1.6.x версий.

Компонент и необходимый к нему плагин можно загрузить по ссылкам в конце страницы. И компонент и плагин должны быть установлены вместе.

Обязательно опубликуйте системный плагин. По умолчанию он называется "J!Dump", находится в группе "system". В противном случае функции отладки будут не доступны и могут вызывать крах всего сайта.

Настройка J!Dump

После установки, у вас появится новый компонент. Перейдя в него, вам откроется краткая справка. На панели инструментов нажмите на параметры. Здесь можно установить:

  • Popup width - Ширина всплывающего окна
  • Popup height - Высота всплывающего окна
  • Auto Popup - Автоматически показывать окно отладки
  • Maximum recursion depth - Максимальная вложенность объекта, которую покажет dump()
  • Trim Strings - обрезать строковые переменные от пробелов по краям
  • Maximum String Length- Максимальная длина строки (в символах)
  • Show origin of call - Показывать место вызова

Окно настроек компонента

Использование отладки в Joomla

Использовать отладку можно практически везде в коде, где определена функция dump().

Функция dump()

dump( $this, 'Переменная $this шаблона' ); 

Просто да? Второй параметр - это опциональная возможность функции, название перменной. Это особенно удобно при использовании нескольких дампов, чтобы легко отличать их друг от друга.

Пример использования в коде Дамп переменной $this в главном шаблоне JoomlaВложенность переменных в виде дереваСписок методов объекта
Блокировка всплывающего окна

Функция dumpSysinfo()

dumpSysinfo(); 

Выводит основную информацию о системе, Joomla, константах, окружении

  • All Defined Constants
  • Environment
  • Joomla Configuration
  • PHP
  • Versions

Функция dumpTemplate()

Используется внутри index.php, для отображения параметров шаблона.

dumpTemplate( $this ); 

Функция dumpMessage()

Отображает какое-нибудь системное сообщение, очень удобно для того чтобы узнать была ли вызвана функция, подключен ли файл, выполнен ли цикл и прочее...

dumpMessage('Используется шаблон '.$this->template); 

 

Функция dumpTrace()

Отображает BackTrace - порядок вызова файлов, функций, аргументы

dumpTrace(); 

Подведем итоги

Плюсы

  • Очень аккуратно отображает данные о объектах, массивах, отличная замена print_r и var_dump.
  • Объектам показывает список доступных методов - подобная вещь к сожалению редко реализуется в отладчиках.
  • Подходит для работы с плагинами, шаблонами, модулями, компонентами и даже библиотеками на лицевой части сайта.
  • Окно дампа можно "заморозить", затем открывать новые и сравнивать предыдущие результаты с текущими.
  • Код расширения написан качественно и понятно, можно легко дополнить своим функционалом.

Минусы

  • Отладка AJAX-запросов через JDump - не самое удобное занятие. Лучше воспользоваться плагином firePHP.
  • Появляется в панели управления никому не нужный пункт с J!Dump, думаю настройки можно было сделать внутри плагина.
  • Всплывающее окно часто блокируется браузером либо системой, для каждого сайта придется добавить исключение.
  • Дампы больших переменных(либо их большого количества) могут подвешивать бразуер.
  • Специфика отладчика не позволяет отлаживаться в панели управления - будет бесконечный редирект, либо другие неприятные вещи.

Замечания

  • Компонент предназначен для использования только на разрабатываемых сайтах. Не используйте его на живом сайте! Советуем удалять либо просто отключать плагин на рабочих сайтах. Это может серьезно навредить безопасности вашего сайта!
  • Вы не можете использовать dump() пока не опубликуете плагин J!Dump, желательно поставить в порядке загрузке его самым первым, чтобы новые функции подключились как можно раньше.

 

В целом расширение очень понравилось, хотя есть некоторые недочеты (а кого их нету?). На деле оказыватся очень удобным, но немного не привычным. Самое большое неудобство на мой взгляд - это медлительность работы JS, но за хорошим железом и быстрым браузером (например, Google Chrome) это не проблема. Рекомендуем!


Смотрите также:
Комментарии (41) Добавить комментарий
  • olga
    olga
    01 Апреля 2013, 16:27
     ↑  0  ↓     ответ

    При работе j!dump в joomla 2.5 при вызове соответствующего пункта меню почему-то дает ошибку 500. Плагин активирован. В чем может быть причина?

    • smet.denis
      smet.denis (админ)
      01 Апреля 2013, 21:40
       ↑  0  ↓     ответ

      А какой текст ошибки?

  • olga
    olga
    04 Апреля 2013, 15:20
     ↑  0  ↓     ответ

    Вот: localhost/project/ru/jdump.html

    Ошибка: 500

    Вы не можете посетить текущую страницу по причине:

    просроченная закладка/избранное

    поисковый механизм, у которого просрочен список для этого сайта

    пропущен адрес

    у вас нет права доступа на эту страницу

    Запрашиваемый ресурс не найден.

    В процессе обработки вашего запроса произошла ошибка.

    Пожалуйста, перейдите на одну из следующих страниц:

    Домашняя страница

    Поиск по сайту

    Если проблемы продолжатся, пожалуйста, обратитесь к системному администратору сайта и сообщите об ошибке, описание которой приведено ниже..

    Представление не найдено [name, type, prefix]: tree, html, dumpView

  • tinyurl.com
    tinyurl.com
    24 Ноября 2019, 07:06
     ↑  0  ↓     ответ

    Hi there, just wanted to tell you, I liked this blog post.

    It was inspiring. Keep on posting!

  • tinyurl.com
    tinyurl.com
    25 Ноября 2019, 09:04
     ↑  0  ↓     ответ

    What's up Dear, are you in fact visiting this web page daily, if so after that you will without

    doubt get pleasant experience.

  • coconut oil was
    coconut oil was
    25 Ноября 2019, 19:03
     ↑  0  ↓     ответ

    I am genuinely grateful to the owner of this website who has shared this fantastic piece

    of writing at at this time.

  • plenty of fish dating site
    plenty of fish dating site
    26 Ноября 2019, 14:42
     ↑  0  ↓     ответ

    Thanks for the auspicious writeup. It if

    truth be told was a leisure account it. Look advanced to more delivered agreeable from you!

    However, how can we be in contact?

  • tinyurl.com
    tinyurl.com
    26 Марта 2022, 15:21
     ↑  0  ↓     ответ

    Hello there, just became alert to your blog through

    Google, and found that it is truly informative.

    I am going to watch out for brussels. I will be

    grateful if you continue this in future. Lots of people will be benefited from your writing.

    Cheers!

  • http://tinyurl.com/y8et8rvp
    http://tinyurl.com/y8et8rvp
    27 Марта 2022, 09:40
     ↑  0  ↓     ответ

    Hi there, i read your blog occasionally and i own a similar one and

    i was just curious if you get a lot of spam remarks?

    If so how do you reduce it, any plugin or anything you can recommend?

    I get so much lately it's driving me mad so any assistance is very much appreciated.

  • http://tinyurl.com/ycpaprpz
    http://tinyurl.com/ycpaprpz
    30 Марта 2022, 18:00
     ↑  0  ↓     ответ

    I know this web site presents quality based posts and other stuff, is there any other website which gives these kinds of things in quality?

  • cheap flights booking
    cheap flights booking
    02 Апреля 2022, 16:32
     ↑  0  ↓     ответ

    I have read a few good stuff here. Definitely price bookmarking for revisiting.

    I wonder how a lot attempt you put to make the sort of excellent informative website.

  • best way to book flights
    best way to book flights
    03 Апреля 2022, 16:14
     ↑  0  ↓     ответ

    I love it when folks get together and share opinions.

    Great website, stick with it!

  • cheap flight
    cheap flight
    04 Апреля 2022, 07:31
     ↑  0  ↓     ответ

    I really like reading a post that will make men and women think.

    Also, thanks for allowing me to comment!

  • cheap tickets flights
    cheap tickets flights
    04 Апреля 2022, 22:48
     ↑  0  ↓     ответ

    Good blog post. I definitely love this website. Keep it up!

  • best rates on airfare
    best rates on airfare
    05 Апреля 2022, 19:29
     ↑  0  ↓     ответ

    It's remarkable for me to have a web page, which is good in favor of my knowledge.

    thanks admin

  • cheap air tickets domestic
    cheap air tickets domestic
    06 Апреля 2022, 03:31
     ↑  0  ↓     ответ

    Hi, i read your blog from time to time and i own a similar one and i was just wondering if you

    get a lot of spam feedback? If so how do you prevent it, any plugin or anything you can suggest?

    I get so much lately it's driving me crazy so any help is very much appreciated.

  • flight
    flight
    06 Апреля 2022, 23:04
     ↑  0  ↓     ответ

    I do not even know how I ended up here, but I thought this post was great.

    I don't know who you are but definitely you're going

    to a famous blogger if you aren't already ;) Cheers!

  • gamefly
    gamefly
    07 Апреля 2022, 11:48
     ↑  0  ↓     ответ

    My spouse and I absolutely love your blog and find the majority of your post's to be exactly I'm

    looking for. Do you offer guest writers to write content

    to suit your needs? I wouldn't mind publishing a post or elaborating on most of the subjects you write with regards to here.

    Again, awesome site!

  • gamefly
    gamefly
    10 Апреля 2022, 22:41
     ↑  0  ↓     ответ

    Normally I do not read post on blogs, but I wish to say that this write-up very pressured me

    to take a look at and do it! Your writing taste has

    been surprised me. Thank you, very great article.

  • tinyurl.com
    tinyurl.com
    10 Мая 2022, 12:31
     ↑  0  ↓     ответ

    Hello There. I found your blog using msn. This is an extremely well written article.

    I'll make sure to bookmark it and return to read more of

    your useful info. Thanks for the post. I'll definitely return.

  • tinyurl.com
    tinyurl.com
    12 Мая 2022, 00:07
     ↑  0  ↓     ответ

    This piece of writing gives clear idea designed for the new visitors of blogging, that actually how to do blogging

    and site-building.

  • tinyurl.com
    tinyurl.com
    17 Мая 2022, 00:34
     ↑  0  ↓     ответ

    Hi there! This is kind of off topic but I need some

    help from an established blog. Is it very difficult to set up

    your own blog? I'm not very techincal but I can figure things out pretty quick.

    I'm thinking about setting up my own but I'm not sure

    where to begin. Do you have any points or suggestions? Appreciate it

  • t.co
    t.co
    05 Июня 2022, 01:57
     ↑  0  ↓     ответ

    Hmm is anyone else experiencing problems with the images on this

    blog loading? I'm trying to determine if its a problem on my end or if it's

    the blog. Any feedback would be greatly appreciated.

  • bit.ly
    bit.ly
    15 Июля 2022, 08:36
     ↑  0  ↓     ответ

    Everything is very open with a really clear explanation of the challenges.

    It was really informative. Your site is very useful.

    Thanks for sharing!

  • tinyurl.com
    tinyurl.com
    22 Июля 2022, 14:51
     ↑  0  ↓     ответ

    Hello, after reading this awesome post i am also happy to share my experience here with mates.

  • t.co
    t.co
    22 Июля 2022, 19:36
     ↑  0  ↓     ответ

    Thanks for any other wonderful article. The place else may just anyone get

    that kind of info in such an ideal method of writing? I have

    a presentation next week, and I'm on the look for such

    information.

  • tinyurl.com
    tinyurl.com
    26 Июля 2022, 11:45
     ↑  0  ↓     ответ

    Wow! At last I got a weblog from where I be able to

    really obtain useful data regarding my study and knowledge.

  • http://tinyurl.com/
    http://tinyurl.com/
    28 Июля 2022, 04:38
     ↑  0  ↓     ответ

    Someone necessarily help to make seriously articles I might state.

    That is the very first time I frequented your website page and thus far?

    I surprised with the analysis you made to make this actual post incredible.

    Excellent job!

  • tinyurl.com
    tinyurl.com
    01 Августа 2022, 18:52
     ↑  0  ↓     ответ

    Why visitors still use to read news papers when in this technological world everything is existing on web?

  • tinyurl.com
    tinyurl.com
    03 Августа 2022, 12:49
     ↑  0  ↓     ответ

    Excellent goods from you, man. I've understand your stuff previous to and you are just extremely wonderful.

    I actually like what you have acquired here, certainly like what you're saying

    and the way in which you say it. You make it entertaining and you still care for to keep

    it wise. I cant wait to read far more from you. This is actually a wonderful web site.

  • http://saigonxua.ca/tracfone/
    http://saigonxua.ca/tracfone/
    08 Августа 2022, 09:50
     ↑  0  ↓     ответ

    Hello everybody, here every person is sharing

    these kinds of knowledge, therefore it's good to read this weblog, and I used to go to see this blog everyday.

  • http://tinyurl.com/2q62ahe3
    http://tinyurl.com/2q62ahe3
    08 Августа 2022, 19:45
     ↑  0  ↓     ответ

    Do you mind if I quote a few of your posts as long as I provide credit and sources back to your blog?

    My blog site is in the very same niche as yours and my

    visitors would truly benefit from a lot of the information you present here.

    Please let me know if this okay with you. Cheers!

  • tinyurl.com
    tinyurl.com
    10 Августа 2022, 03:19
     ↑  0  ↓     ответ

    Hey I know this is off topic but I was wondering if you knew of any widgets I could add to my blog that automatically tweet my newest twitter updates.

    I've been looking for a plug-in like this for

    quite some time and was hoping maybe you would have some

    experience with something like this. Please let me know if

    you run into anything. I truly enjoy reading your blog and

    I look forward to your new updates.

  • tinyurl.com
    tinyurl.com
    10 Августа 2022, 20:10
     ↑  0  ↓     ответ

    Please let me know if you're looking for a author for your weblog.

    You have some really great posts and I feel I would be a good asset.

    If you ever want to take some of the load off, I'd love to write some content for your blog in exchange

    for a link back to mine. Please send me an e-mail if interested.

    Thank you!

  • coupon
    coupon
    12 Августа 2022, 08:12
     ↑  0  ↓     ответ

    Neat blog! Is your theme custom made or did you download it from somewhere?

    A design like yours with a few simple adjustements would really make my blog jump

    out. Please let me know where you got your theme.

    Thank you

  • tinyurl.com
    tinyurl.com
    12 Августа 2022, 17:34
     ↑  0  ↓     ответ

    Everyone loves it when people get together and share opinions.

    Great website, stick with it!

  • tinyurl.com
    tinyurl.com
    13 Августа 2022, 15:13
     ↑  0  ↓     ответ

    Hello, Neat post. There is a problem with your web site in internet explorer, may test this?

    IE still is the marketplace chief and a huge component of folks will leave out your wonderful writing because of this problem.

  • tinyurl.com
    tinyurl.com
    14 Августа 2022, 11:26
     ↑  0  ↓     ответ

    excellent points altogether, you just received a new reader.

    What would you suggest in regards to your post that you

    made some days ago? Any positive?

  • tinyurl.com
    tinyurl.com
    15 Августа 2022, 20:25
     ↑  0  ↓     ответ

    I visited several web pages however the audio quality for audio songs current

    at this web page is in fact marvelous.

  • tinyurl.com
    tinyurl.com
    17 Августа 2022, 10:41
     ↑  0  ↓     ответ

    Hi I am so glad I found your website, I really found you by

    mistake, while I was looking on Google for something else, Nonetheless I am here now and would just like to say thanks a lot for

    a tremendous post and a all round interesting blog (I also love the theme/design), I

    don't have time to go through it all at the minute but I

    have saved it and also added in your RSS feeds, so when I have time I will

    be back to read a lot more, Please do keep up the awesome job.

  • ??????
    ??????
    07 Сентября 2022, 09:53
     ↑  0  ↓     ответ

    I made my own site. I'm in awe of how beautiful you are, you're great at creating a site, especially what's written here. You are so good. Thank you for sharing your site with us.

    https://main7.net/baca/

Оставить комментарий




* обязательно для заполнения

1 введенный почтовый адрес используется только для обратной связи при ответах в комментариях и сервиса gravatar.com
.