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

    +161

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    $sec_in_year = 31536000;
    $sec_in_lyear = 31622400;
    $sec_in_28 = 2419200;
    $sec_in_29 = 2505600;
    $sec_in_30 = 2592000;
    $sec_in_31 = 2678400;
    $sec_in_day = 86400;
    $sec_in_hour = 3600;
    $sec_in_min = 60;
    $year_count = 1970;
    $month_count = 0;
    $day_count = 1;
    $hour_count = 0;
    $min_count = 0;
    $lyear_count = 2;                                                // Make an array of seconds per month for ease of use.
    $months = array(2678400, 2419200, 2678400, 2592000, 2678400, 2592000, 2678400, 2678400, 2592000, 2678400, 2592000, 2678400);
    $lmonths = array(2678400, 2505600, 2678400, 2592000, 2678400, 2592000, 2678400, 2678400, 2592000, 2678400, 2592000, 2678400);
    $month_list = array('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sept', 'Oct', 'Nov', 'Dec');
    
    while($utime >= $sec_in_year) {                        // Count the year since 1970.
            if($lyear_count % 4 == 0) {
              $utime -= $sec_in_lyear;                // Compensate for leap years.
            }
            else {
              $utime -= $sec_in_year;
            }
            $year_count++;
            $lyear_count++;
    }
    while($utime >= $months[$month_count]) {        // Count the months since Jan.
            if($lyear_count % 4 == 0) {
                    $utime -= $lmonths[$month_count];        // Compensate for leap year Feb.
            }
            else {
                    $utime -= $months[$month_count];
            }
            $month_count++;
    }

    И еще куча строк кода.
    Конвертим никсовый временной штамп, в читаемый для человека формат... aka date()

    fork, 07 Декабря 2010

    Комментарии (25)
  2. PHP / Говнокод #4844

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    <ZORG2> Как грамотно хранить PHP код в базе????
    <neko> как строку
    <ZORG2> я имею в виду фильтровать его как то?? возможность добавления PHP кода в базу будет только у админа сайта.
    <neko> скастуй в строку!
    <ZORG2> и этот код будет подключаться в некоторые страницы сайта для выполнения

    привет от #php на irc.by

    robot, 07 Декабря 2010

    Комментарии (13)
  3. PHP / Говнокод #4843

    +158

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    protected function composeResolvers()
        {
            require_once systemConfig::$pathToSystem . '/resolver/init.php';
            require_once systemConfig::$pathToSystem . '/resolver/templateMediaResolver.php';
            require_once systemConfig::$pathToSystem . '/resolver/moduleMediaResolver.php';
            require_once systemConfig::$pathToSystem . '/resolver/extensionBasedModuleMediaResolver.php';
            require_once systemConfig::$pathToSystem . '/core/fileLoader.php';
    
            $baseresolver = new compositeResolver();
            $baseresolver->addResolver(new fileResolver(systemConfig::$pathToApplication . '/*'));
            $baseresolver->addResolver(new fileResolver(systemConfig::$pathToWebRoot . '/*'));
            $baseresolver->addResolver(new fileResolver(systemConfig::$pathToSystem . '/*'));
    
            $resolver = new compositeResolver();
            $resolver->addResolver(new templateMediaResolver($baseresolver));
            $resolver->addResolver(new moduleMediaResolver($baseresolver));
            $resolver->addResolver(new extensionBasedModuleMediaResolver($baseresolver));
            $resolver->addResolver(new classFileResolver($baseresolver));
    
            if (function_exists('external_callback')) {
                external_callback($resolver, $baseresolver);
            }
    
            return new cachingResolver($resolver, 'resolver_media_cache');
        }

    Прямиком с http://govnokod.googlecode.com/svn/trunk/govnoquoter/www/bundle.php
    Там ещё много всего интересного!

    Govnocoder#0xFF, 07 Декабря 2010

    Комментарии (77)
  4. PHP / Говнокод #4840

    +172

    1. 1
    2. 2
    3. 3
    4. 4
    for($i;$i<strlen($param);$i++)
            {
                if(strpos($extra,$param[$i]) === FALSE && eregi('[^a-zA-Z]', $param[$i] )) return false;
            }

    Проверка, что строка состоит только из букАвок. com_rsform для Joomla. Там весь validation.php таким измазан.

    young, 06 Декабря 2010

    Комментарии (5)
  5. PHP / Говнокод #4838

    +20

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    if( 
        ('node' == arg(0) ) && 
        is_numeric(arg(1) ) && 
        ($node = node_load(array('nid' => arg(1), 'status' => 1 ) ) ) &&
        ( 
            ('chapter' == $node->type) || 
            ('article' == $node->type) ||
            ('gall' == $node->type)
        ) && 
        isset($node->field_parentchapter) && 
        is_array($node->field_parentchapter) && 
        count($node->field_parentchapter) 
    ){
    /// blah blah
    }

    матан, или как сделать из кучи одинаковых if() один

    brainstorm, 06 Декабря 2010

    Комментарии (14)
  6. PHP / Говнокод #4837

    +162

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    function getDayHight($hour) {
        return ($hour >= 6 && $hour < 18) ? 'day' : 'hight';
    }
     
    function getPhenomenaName($phenomena) {
        static $NAMES = array(
            'SKC' => 0,
            'FEW' => 0,
            'BKN' => 0,
            'SCT' => 0,
            'SKCBR' => 0,
            'SKCFG' => 0,
            'SKCRA' => 0,
            'SKCSNRA' => 0,
            'SKCSN' => 0,
            'SKCBl' => 0,
            'SKCTS' => 0,
            'SKCTSRA' => 0,
            'FEWBR' => 1,
            'FEWFG' => 1,
            'FEWRA' => 4,
            'FEWSNRA' => 2,
            'FEWSN' => 7,
            'FEWBl' => 7,
            'FEWTS' => 8,
            'FEWTSRA' => 8,
            'BKNBR' => 1,
            'BKNFG' => 1,
            'BKNRA' => 4,
            'BKNSNRA' => 2,
            'BKNSN' => 7,
            'BKNBl' => 7,
            'BKNTS' => 8,
            'BKNTSRA' => 8,
            'SCTBR' => 1,
            'SCTFG' => 1,
            'SCTRA' => 4,
            'SCTSNRA' => 2,
            'SCTSN' => 7,
            'SCTBl' => 7,
            'SCTTS' => 8,
            'SCTTSRA' => 8,
            'OVCBR' => 3,
            'OVCFG' => 3,
            'OVCRA' => 5,
            'OVCSNRA' => 6,
            'OVCSN' => 7,
            'OVCBl' => 7,
            'OVCTS' => 8,
            'OVCTSRA' => 8,
        );
        $phenomena = preg_replace('/\\d/', '', $phenomena);
        return isset($NAMES[$phenomena]) ? $NAMES[$phenomena] . '.png' : '-1';
    }
     
    $url = '/img/' . getDayHight($hour) . '/' . getPhenomenaName($phenomena);

    #4836 после рефакторинга

    qbasic, 06 Декабря 2010

    Комментарии (8)
  7. PHP / Говнокод #4836

    +168

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    <?php
    function getDayTime($hour) {
            switch ($hour) {
                    case '0': return 'Утро';
                    case '6': return 'День';
                    case '12': return 'Вечер';
                    case '18': return 'Ночь';
            }
    }
     
     
    function getPhenomeaUrl($phenomena) {
            $baseUrl = 'img/day/';
            $baseUrl1 = 'img/night/';
            $phenomena = preg_replace('/\d/', '', $phenomena);
                    switch ($phenomena) {
                    case 'SKC': return $baseUrl . '0.png';
                    case 'FEW': return $baseUrl . '0.png';
                    case 'BKN': return $baseUrl . '0.png';  
                    case 'SCT': return $baseUrl . '0.png';
                case 'SKCBR': return $baseUrl . '0.png';
                    case 'SKCFG': return $baseUrl . '0.png';
                    case 'SKCRA': return $baseUrl . '0.png';
                    case 'SKCSNRA': return $baseUrl . '0.png';
                    case 'SKCSN': return $baseUrl . '0.png';
                    case 'SKCBl': return $baseUrl . '0.png';
                    case 'SKCTS': return $baseUrl . '0.png';
                    case 'SKCTSRA': return $baseUrl . '0.png';
                    case 'FEWBR': return $baseUrl . '1.png';
                    case 'FEWFG': return $baseUrl . '1.png';
                    case 'FEWRA': return $baseUrl . '4.png';
                    case 'FEWSNRA': return $baseUrl . '2.png';
                    case 'FEWSN': return $baseUrl . '7.png';
                    case 'FEWBl': return $baseUrl . '7.png';
                    case 'FEWTS': return $baseUrl . '8.png';
                    case 'FEWTSRA': return $baseUrl . '8.png';
                    case 'BKNBR': return $baseUrl . '1.png';
                    case 'BKNFG': return $baseUrl . '1.png';
                    case 'BKNRA': return $baseUrl . '4.png';
                    case 'BKNSNRA': return $baseUrl . '2.png';
                    case 'BKNSN': return $baseUrl . '7.png';
                    case 'BKNBl': return $baseUrl . '7.png';
                    case 'BKNTS': return $baseUrl . '8.png';
                    case 'BKNTSRA': return $baseUrl . '8.png';
                    case 'SCTBR': return $baseUrl . '1.png';
                    case 'SCTFG': return $baseUrl . '1.png';
                    case 'SCTRA': return $baseUrl . '4.png';
                    case 'SCTSNRA': return $baseUrl . '2.png';
                    case 'SCTSN': return $baseUrl . '7.png';
                    case 'SCTBl': return $baseUrl . '7.png';
                    case 'SCTTS': return $baseUrl . '8.png';
                    case 'SCTTSRA': return $baseUrl . '8.png';
                    case 'OVCBR': return $baseUrl . '3.png';
                    case 'OVCFG': return $baseUrl . '3.png';
                    case 'OVCRA': return $baseUrl . '5.png';
                    case 'OVCSNRA': return $baseUrl . '6.png';
                    case 'OVCSN': return $baseUrl . '7.png';
                    case 'OVCBl': return $baseUrl . '7.png';
                    case 'OVCTS': return $baseUrl . '8.png';
                    case 'OVCTSRA': return $baseUrl . '8.png';
            }
    }

    qbasic, 06 Декабря 2010

    Комментарии (8)
  8. PHP / Говнокод #4829

    +145

    1. 1
    2. 2
    3. 3
    <?php
    
    die 'Превьюшки пока что не обрабатываются.';

    Либо я уже спятил и что-то делаю не так, либо php.
    die ('Превьюшки пока что не обрабатываются.'); работает на ура, а данный пример выбивает мне Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING.
    Ничего не понимаю.

    7ion, 04 Декабря 2010

    Комментарии (10)
  9. PHP / Говнокод #4828

    +162

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    $start_time = OCIResult($stmt, 'START_TIME');
    $end_time = OCIResult($stmt, 'END_TIME');
    $s_h = (int)($start_time / 60); if ($s_h<10) $s_h = '0'.$s_h;
    $s_m = $start_time % 60; if ($s_m<10) $s_m = '0'.$s_m;
    $e_h = (int)($end_time / 60); if ($e_h<10) $e_h = '0'.$e_h;
    $e_m = $end_time % 60; if ($e_m<10) $e_m = '0'.$e_m;
    $activ = $s_h.':'.$s_m.'-'.$e_h.':'.$e_m;

    1_and_0, 04 Декабря 2010

    Комментарии (8)
  10. PHP / Говнокод #4826

    +160

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    /**
         * Filtering posted data. Converting localized data if needed
         *
         * @param array
         * @return array
         */
        protected function _filterPostData($data)
        {
            $data = $this->_filterDates($data, array('dob'));
            return $data;
        }

    Загадочный dob - кто он? Миф или реальность?

    et, 03 Декабря 2010

    Комментарии (14)