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

    +183

    1. 1
    if (!session_start()) {session_start();}

    Случилось мне, переписывать самописную чьюто хрень, так что буду постить не по мере лени..)

    Запостил: flomaster, 08 Декабря 2010

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

    • Если сессия не проинициализировалась, пох - все равно должна.
      Ответить
    • - Сессия, проинициализируйся!
      - Нет?
      - А если подумать?
      Ответить
    • осталось только while(!session_start()); сделать
      Ответить
      • А если уйдёт в вечный цикл?
        Ответить
        • в пхп нет ничего вечного. обычно секунд 30, или 60...
          Ответить
          • даже 30 секунд открывания сессий - это ппц

            тогда уж до кучи и session_destroy )
            while (!session_start()) {
            session_start();
            }
            // тут еще какой то кал..
            while(!session_destroy()) {
            session_destroy();
            }
            Ответить
          • set_time_limit(0), не?
            Ответить
            • голову за такое оторву!
              Ответить
              • Есть очень узкая категория скриптов где такое необходимо, например импорт чего-то большого и последующая обработка.
                Ответить
                • скрипт должен работать до конца света?
                  Ответить
                  • Если это импорт на дев машине, почему бы и нет? Как справится так и ок, если что прибью, а вообще он постоянно сообщает сколько уже запроцессил и сколько приблизительно осталось, никто ж не говорит про сервеное преминение.
                    Ответить
                    • какой странный импорт. И вообще, я бы не стал такое делать на пхп.

                      > преминение
                      граммар-наци негодует! (ц)
                      Ответить
                      • > какой странный импорт. И вообще, я бы не стал такое делать на пхп.
                        а на чем, на Сях? Например, скрипт который вытягивает инфу с вебсервиса в 6 потоков(multicurl) на чем бы писали так чтобы уложиться в 4 часа времени на написание?

                        >граммар-наци негодует!
                        перепутал буквы местами, с кем не бывает ;)
                        Ответить
                        • >>а на чем, на Сях?
                          хм) на перле, на питоне, хотя если программист больше ничего не знает -- то конечно можно делать и на пхп))
                          Ответить
                        • >6 потоков
                          >php
                          >6 потоков

                          lolwut?
                          Ответить
                          • мультикурл умеет паралельно загружать инфу, наверняка америку открыл
                            Ответить
                            • посмотри на его реализацию, няша..
                              заодно узнаешь, что пхпшники называют "параллельностью" (лол).
                              Ответить
                      • >>"какой странный импорт"
                        Биллинг. Тарифы.
                        Ответить
                  • скрипт должен работать столько, сколько ему требуется для выполнения своих функций
                    Ответить
              • А как тогда работает web-сервер на php? есть и такой.
                Ответить
                • где то слышал,что китайсы даже ОСку для фонов на пхп написали.
                  но вопрос везде один - НАФИГА???
                  Ответить
                  • "где то слышал,что китайсы даже ОСку для фонов на пхп написали."
                    Это было на говнокоде. Где ж ещё?! ))

                    http://govnokod.ru/4422#comment49656
                    ====
                    А зачем? Потому что так проще наверно.
                    Ответить
                  • миня цетирують!!!
                    Ответить
                    • Одна ава круче другой. Надо написать Кнуту, чтобы включил в свою коллекцию:
                      http://www-cs-faculty.stanford.edu/~knuth/diamondsigns/diam.html
                      Ответить
                • пулингом и неблокирующими сокетами надо думать)
                  Ответить
              • В курсе, что в консольном режиме время выполнения скрипта не ограничено?
                Ответить
          • вечный цикл в PHP выполняется за 30 секунд!!
            Ответить
            • Смотря какой max_execution_time.
              Ответить
            • каждый раз, php всё снова и снова ломает стереотипы...
              Ответить
            • PHP - самый быстрый язык программирования! Даже вечный цикл в нём выполняется за какие-то 30 секунд!
              Ответить
            • истину глаголешь, действительно 30 сек http://www.php.net/manual/en/info.configuration.php#ini.max-execution-time
              Ответить
              • ниче что это значение меняется ??? в php.ini
                Ответить
                • очень плохо!
                  Ответить
                • самый смак с этим ini.max-execution-time в том, что этим пхп себя сразу выдал радостным ожиданием неандертальцев столь жопоруких, что как бы они не переписывали скрипт, он у них обязательно будет входить в вечный цикл с громким чавканием ресурсами, который нужно немедленно пресекать, пока он не подвесил надежно всю ОСьку (как это было в Вынь 9х)
                  Где вы еще такой цирк увидите, кроме пхп?

                  новый мем: кто на пхп кодил, тот в цирке не смеется
                  Ответить
                  • >>новый мем: кто на пхп кодил, тот в цирке не смеется

                    ))))))))))))))))
                    Ответить
                  • я когда-то имел дело с PHP, но в цирке нравится мне.
                    Ответить
                  • А разве это плохо, ограничивать время скрипта?
                    Ответить
                    • плохо. НЕ надо загонять меня в рамки.
                      1. скрипт ожидает разблокировки ресурсов своими силами, дождался, блокирует ресурс, начал работу и тут его убивают, не дав разблокировать - ужас
                      2. скрипт убит. Юзер видит полстраницы разползшейся разметки, сообщение, что кодер жопорук, или пустую страницу - гадость

                      НИ ОДИН другой язык не убивает скрипт - это вам ни о чем не говорит?
                      Ответить
                      • спасибо.
                        А как насчёт простеньких страничек?
                        если скрипт выполняется более 30 секунд, то тут скорее ошибка в коде.

                        Да и вы сами сказали про "set_time_limit(0)":
                        "голову за такое оторву!"
                        Ответить
                        • именно так, вообще одна страница за один запрос должна генериться точно меньше секунды, 0,2с думаю это норма для хомячка (по крайней мере у меня на моем фреймворке со всеми компонентами на моем компе столько и генерится. Ой, даже с xdebug)
                          Ответить
                      • уже то, что скрипт чего-то дожидается вместо того, чтобы формировать страницу, означает что кодер жопорук
                        Ответить
                        • необязательно
                          но все равно, не надо меня насиловать этими таймаутами. Если у меня процесс пошел на перекус ресурсами, я его вырублю и буду дебажить до посинения, пока не доведу до разумных показателей

                          пример такого насилования был у меня в году 98, когда я сделал сайт с фреймами, и три скрипта: один выдавал баннер, другой генерил левое меню, третий отдавал контент. Залил я все это дело на халявный хостинг, и там меня давай обламывать: мол, не разрешено более двух процессов одновременно. В результате периодически умирало либо меню, либо контент
                          Ответить
                          • зато верхний фрейм успешно накликивал баннер, профит же! :)
                            Ответить
                            • он был верхним, поэтому во фреймсете шел первым, поэтому, как правило, запрашивался броузером чуть быстрее )))
                              Ответить
                        • вообще, одно то, что этого нигде, кроме как в пыхе нет, наталкивает на мыслю, что эта фишка не так полезна, как вредна
                          Ответить
                          • Нет. Это наталкивает на мысль, что php вреден в больших количествах. Отсюда и ограничение времени работы скрипта )))
                            Ответить
                            • пыхобыдлокод и пхп -- где тут причина, а где следствие? )))
                              Ответить
                              • Логика и общие принципы PHP - причина, а все остальное следствие в виде быдлокода, костылей и пр.
                                Т.к. php упорно продолжает работать и не выпадает при наличии ошибок и даже позволяет их игнорировать, не удивительно, что был придуман костыль в виде set_time_limit.
                                Ответить
              • The default setting is 30.
                Я бы перевел так:
                Значение по умолчанию - 30.

                или я что-то не понял?
                Ответить
          • Никогда не пользовался PHP, откуда такие тонкости знать.
            Ответить
    • промазал )
      Ответить

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