Маленькие хитрости. Отладка кода.

Главные вкладки

Аватар пользователя olk olk 13 апреля 2010 в 16:49

Для пишущей (и начинающей писать) братии под Друпал - расскажу о маленькой хитрости, которую я использую для отладки кода при написании модулей и функций темизации.
Вообще-то это известный «велосипед», но может кому нибудь из начинающих поможет.
Я не люблю использовать модуль devel из за его тяжести, поэтому использую
простенькую функцию помещенную мной в файл settings.php

Функция

/**
 * param
 *      $msg - то что хотим показать, переменная , массив, объект
 *      $title - опционально, метка
 *      $pre   - обрамлять тэшгами <pre> - полезно для показа массивов и объектов
 *      $out   - если TRUE, выводить через drupal_set_message, иначе вернуть информацию
 */

function dbg($msg, $title = '', $pre = TRUE, $out = TRUE) {
global $user;
// выводим только для админа, в принципе можете изменить uid на другой,
// что бы выводилось под вашим экаунтом;
 if ($user->uid == 1) {
   if ($out) {
     $info = print_r($msg,1);
     if ($pre) {
       $info = '<pre>' . $info . '</pre>';
     }
     if (!empty($title)){
       $info = '<strong>' . $title . '</strong><br/>' . $info;
     }
   }
   if ($out) {
     drupal_set_message($info);  
   }
   else {
   return $info;
   }
  }
}

вот и все, теперь, чтобы посмотреть какую либо информацию, достаточно
в коде вставить нашу функцию

 dbg($value);

Оригинал заметки тут

Комментарии

Аватар пользователя olk olk 13 апреля 2010 в 22:50

"PVasili" wrote:
А чем krumo() хуже?

Да не чем не хуже Smile но по моему мнению несколько избыточен ...
(просто включать целый класс, для того что бы увидеть переменную, наверное можно, но нужно ли ...)

Аватар пользователя Dеmimurych Dеmimurych 13 апреля 2010 в 23:22

Прекратите плодить невежество.

Научитесь использовать что то вменяемое из разряда eclipse или netbeans плюс xdebug или любой другой отладчик по вкусу.

и забудьте об этих архаизмах.

Аватар пользователя olk olk 13 апреля 2010 в 23:34

"Dеmimurych" wrote:
Прекратите плодить невежество.

Научитесь использовать что то вменяемое из разряда eclipse или netbeans плюс xdebug или любой другой отладчик по вкусу.

и забудьте об этих архаизмах.


Ой, вот только давайте не будем впадать в частности, чем вам поможет xdebug на shared-хостинге ...
Конечно, можно сказать, что типа отлаживайте локально, а только потом выкладывайте ...
а мне например нравится писать что-то новое сидя в кафэшке, вечерком, за кружечкой пива с нетбука Smile

Аватар пользователя riyuzakki riyuzakki 13 апреля 2010 в 23:59

"olk" wrote:
Ой, вот только давайте не будем впадать в частности, чем вам поможет xdebug на shared-хостинге ...

Полностью согласен.
Здоровый консерватизм никому не вредил, а часто и помогал. А то погонишься за технологиями, глядишь - на дотнетах с сильверлайтами начнешь "писать". Буэээ...