1. PHP / Говнокод #13716

    +148

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if (!defined('_JDEFINES'))
    {
    	define('JPATH_BASE', dirname(__DIR__));
    	require_once JPATH_BASE . '/includes/defines.php';
    }

    Я такого даже у индусов не встречал! Джумла: чем дальше тем страшнее...

    Запостил: virtual_cia, 01 Сентября 2013

    Комментарии (9) RSS

    • и чего тут страшного?
      Ответить
    • Началось! Говнокодеры выкладывают на говнокод нормальный код!
      Ответить
    • Типа, никто не обратил внимания, что проверяется _JDEFINES, а
      далее define('JPATH_BASE')
      и это "нормальный код"?!!
      Ответить
      • _JDEFINES скорее всего объявляется в defines.php. Проверка _JDEFINES вместо JPATH_BASE выражает то, что автор хочет проверить был ли подключен defines.php (любым способом), а не то, что был объявлен этот самый JPATH_BASE.

        > и это "нормальный код"
        Для языка без модулей, такого как си, кресты или php - вполне.
        Ответить
        • Беру свои слова обратно. Код - говно. Если кто-то заинклудит defines.php другим способом, то JPATH_BASE останется необъявленным. Для защиты от дурака стоит разбить на 2 ифа:
          if (!defined('JPATH_BASE'))
              define('JPATH_BASE', dirname(__DIR__));
          if (!defined('_JDEFINES'))
              require_once JPATH_BASE . '/includes/defines.php';
          Ответить
    • Код во общем то нормальный, только взята часть кода - в первой части оператор If проверяет, есть ли файл defines.php в корне, и если его в корне нет, не исполняется, а во второй - которая отражена - как раз проверяет, не выполнен ли код в первом условном операторе, и если не выполнен - исполняется из папки /includes.
      Так что код нормальный.
      Ответить
    • В Чернобыле тоже так говорили...
      И "notice" и "warning" при выполнении скрипта тоже нормально?
      Говнокод - он и есть говнокод.
      И кто коворит, что такое нормально в программаже, не зависимо от платформы, - просто говнокодер.
      Ответить

    Добавить комментарий