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

    +158

    1. 1
    empty ( $php->p['h']{'p'}{'p'}['h']->p );

    Запостил: __proto__, 01 Февраля 2014

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

    • Занятно, но... Что в таком контексте делают фигурные скобки? Или это какое-то нововведение пых-6? :)
      Ответить
      • А читать документацию не умеем?
        Both square brackets and curly braces can be used interchangeably for accessing array elements (e.g. $array[42] and $array{42} will both do the same thing in the example above).

        Кстати, синтаксис ниже абсолютно корректен:
        <?php
        
        ${'Nåme™'} = 1;
        
        var_dump(${'Nåme™'}); // int 1
        Ответить
        • Ну такое знакомо, а вот про фигурные скобки для массивов... Ни разу за 10 лет не встречал. :)

          Кстати в основной области написано
          Array elements can be accessed using the array[key] syntax.
          Про curly упомянули только в note. :)

          Читать-то читаем, но как всегда только в случае если что-то не работает. :) С массивами вроде всё очевидно (кроме типизации ключей) - смысл перечитывать всю эту хрень? :)
          Ответить
          • Ну вот именно поэтому этот код и здесь :)
            Ответить
        • Лол говноязык :) Какой еще язык использует фигурные скобки для индексов? В перле они зарезервированы для хеш массивов, а квадратные - для списков.

          А в юникодовых ключах как раз ничего плохого нет.
          Ответить
          • > фигурные скобки для индексов
            Основная проблема даже не в них, а в TMTOWTDI.
            Ответить
            • Сейчас набегут рубисты и скажут что не надо обижать их философию.
              Ответить
              • > их философию.
                Я думал подобные философы сидят строго на пёрле.
                Правда тут и крестобляди могут обидеться.

                Парсер сложнее, двойственность кода, и лишний конструкт смущающий людей и усложняющий чтение кода (пруфы чуть выше) - что тут хорошего?
                Ответить
                • > крестобляди могут обидеться
                  Опытные крестобляди не обижаются. Они осознают не только достоинства своего инструмента, но и его недостатки.
                  Ответить
                  • Ну в крестах как раз не только < >, но и пресловутые фигурные скобки неоднозначны (всякие инициализаторы).
                    Ответить
                    • Неоднозначны по большей части для разрабов компилятора и всяких извращенцев, которые пытаются его наебать и получают за это граблями по яйцам.

                      В нормальных ситуациях - все вполне однозначно ;)
                      Ответить
                      • >> и всяких извращенцев, которые пытаются его наебать и получают за это граблями по яйцам.

                        Зачем так грубо? Это ж всё наши знакомцы - завсегдатаи крестотредов и крестофорума!
                        Хотя читая тут раздел С++ , ничего другого кроме "всяких извращенцев" в голову и не приходит.
                        Ответить
                        • не наебешь - не проживёшь!
                          замечу, что крестоблядь без фантазии - считай калека
                          Ответить
                          • > крестоблядь без фантазии - считай калека
                            Ну меру то тоже надо знать...

                            А то понапишут всяких a<0>=8>=8, и ругают кресты за неоднозначность синтаксиса...
                            Ответить
                  • Как старый грустный пидор, осознающий не только достоинства, но и недостатки? :)
                    Ответить
              • набижать могу один только я, так как судя по всему рубистов тут больше нет. как и дотнетчиков. Одни крестобляди
                Ответить
                • "а я думал ты брат-жабист..."
                  (c)
                  Ответить
                  • Ну где дотнет там и жаба. языки то братские.

                    ps минусуют. крестобляди недовольны
                    Ответить
                    • > языки то братские
                      c#: привет, брат!
                      java: не брат ты мне, гнида виндожопая!
                      Ответить
                      • # - я один тут гоатсе вижу?
                        Ответить
                      • С#: а ты теперь гнида оракловская, оба мы в жопе
                        Ответить
                        • c#: привет, брат!
                          java: не брат ты мне, гнида виндожопая!
                          c#: смотри, какой у меня гуй красивый!
                          java: гуй не нужен! только консолечкой, только в срачло!
                          Ответить
                      • c#: привет, брат!
                        java: недостаточно фабрик!

                        c#: привет, брат!
                        java: loading...
                        Ответить
                        • голосом прислужника из wc3:
                          c#: нужно обновить фреймворк
                          java: нужно больше фабрик
                          Ответить
                      • То ли прыщеблядей тут много, то ли боты.
                        Ответить
                        • Причём здесь это? Ценителей юмора много. Даже я плюсанул, хотя у меня на линукс не стоит.
                          Кто-то не знает C/C++ и стандартопроблем, кто-то не знает хаскель, кто-то не знает низкоуровневых штучек и потому не может по достоинству оценить высказывания Борманда, а юмор понимают все.
                          Ответить
                          • Не надо, Борманд и Роман всегда по делу говорят. Я думаю каждый здесь это понимает.
                            Ответить
                            • Каждый понимает, но плюсовать хаскельную магию не спешит, даже если автор её - трижды Роман, даже если написанное - гениально. Всё же, тут не секта.
                              По-моему, авторитет тут - это +0.5, смягчающие мнение при попытке поставить минус и придающие уверенность при желании плюсануть.
                              Ответить
                              • > даже если автор её - трижды Роман
                                Советского союза.
                                Ответить
                • люр у нас фанатеет от руби, ну и безликий гест иногда подаёт признаки осведомлённости
                  Ответить
              • Руби не юзал, но в перле эта философия была доведена до маразма.
                Ответить
            • Я это и имел в виду - два варианта там, где без всяких потерь можно было бы оставить 1.
              Ответить
          • > А в юникодовых ключах как раз ничего плохого нет.
            Я тебя расстрою - это не ключ, а имя переменной...
            Ответить
            • ${'Nåme™'} это то же, что и $Nåme™ ? Ну тогда не знаю. В жавке кстати тоже можно использовать юникод в именах.
              Ответить
              • Но {'$Nåme™'} — это не ключ массива, а название переменной.
                Разница в том, что интерпретатор как бы пошлет вас на #@!, увидев $Nåme™.
                Ответить
          • MAXScript, например, имеет некую фичу по имени BitArray, и с ним можно общаться как - то так:
            ba = #{3, 4..10, 42} //инициализация, в фигурных скобках индексы с true
            ba[2] = true //ну а тут обычная питушня как с массивами
            Ответить

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