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

    +175

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    function json2array($json_data)
    {
        $json_array = false;
        $json = substr($json, 1, -1);
        $json = str_replace(array(":", "{", "[", "}", "]"), array("=>", "array(", "array(", ")", ")"), $json_data);
        @eval("\$json_array = array({$json});");
        return $json_array;
    }

    Парсим json

    Запостил: acer_paser, 01 Июня 2015

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

    • у меня нет слов
      Ответить
      • та нормально, собакой прикрыли, все ок.
        Ответить
    • Конгениально!
      Ответить
      • питух, конгениально значит "одинаково"!
        Ответить
        • Вася, иди почитай словарь. Потом подумай, чему конгениален этот код.
          Ответить
    • А если символы :{}[] будут внутри строковых значений?
      Ответить
      • да кого это ебет
        Ответить
        • А если заказчик доколупается – будем валидировать регулярками, что бы не слали всякую херню, которой не было в ТЗ.
          Ответить
      • ...то пропатчим на бегу, в 4ом часу ночи. будьте готовы к новым сюрпризам!
        Ответить
    • а в php разве нет дисериализации json?
      Ответить
      • Есть, но так надёжнее.
        Ответить
      • Разве ты не знал, что все нормальные пасаны парсят джейсон и хтмл сами?
        Ответить
        • "Telling a programmer there's already a library to do X is like telling a songwriter there's already a song about love." - @PeteCordell
          https://twitter.com/RichRogersHDS/status/601870361362300929

          (Говорить программисту, что библиотека, делающая Ч уже существует все равно что говорить песнописцу, что о любви песню уже сочинили)
          Ответить
          • Это правильно что перевод даешь для наших меньших братьев
            Ответить
            • Только обидно в таких сообщениях, что сначала парсишь и переводишь текст, а потом дочитываешь, а там внизу всё уже перевели.
              Ответить
              • парсишь? что парсишь?
                Ответить
                • Текст комментария.
                  Ответить
                  • моя твоя не понимай
                    Ответить
                    • Да что тут непонятного... Читаю комментарий, постигаю его смысл, а потом внизу то же самое в виде, который гораздо легче усвоить.
                      Ответить
                      • Тьфу ты, я думал что то интересное
                        Ответить
                        • И правда, что-то интересное.
                          Читаешь комментарий http://govnokod.ru/18262#comment287985, постигаешь его смысл, а потом внизу то же самое в http://govnokod.ru/18262#comment287995 в виде, который гораздо легче усвоить.
                          Ответить
                    • Объясняю: 1024 очень плохо умеет читать, а по-английски так и вовсе никак. И чтобы понять смысл текста на английском ему приходится напрягать мозг, а делает он это не часто, и очень уж сильно страдает от такого необычного для него вида деятельности как напряжение мозга
                      Ответить
          • > песнописцу
            Пёс-но-песец... Может лучше просто "поэту"?
            Ответить
            • >поэту
              >песню
              Ответить
              • А как называется человек, который сочиняет слова для песен? :)
                Ответить
                • Songwriter ну или lyricist
                  Ответить
                • автор слов
                  Ответить
                • Слова для песен называются стихи а пишет их поэт
                  Ответить
                  • Какие это стихи нах стихи

                    Мир, в котором я живу, не делится на части Пока в нём есть любовь. Знать не в снах, а наяву каким бывает счастье, Делить его с тобой.


                    Просто набор слов.

                    Ну и сиськи.
                    Ответить
                    • Хорошие стихи
                      Сам, небось, написал? Ай да молодец!
                      Ответить
                    • Напиши лучше
                      Ответить
                      • Давай лучше я сейчас въебу тебе минус и ты заткнёшься.
                        :P
                        Ответить
                        • А ты не изменился, конь
                          Ответить
                          • Иго-гоооо!!!
                            ИгОООоо-ГООООООООООООООООООООООООООООООО!!
                            Ответить
                    • Перевожу с женского на программистский:


                      Мир, в котором я живу, не делится на части
                      // в нашем проекте говённая архитектура, модульности в разрабатываемых продуктах не наблюдается
                      Пока в нём есть любовь.
                      // пока нам, программистам, интересно копаться в этом говнокоде
                      Знать не в снах, а наяву каким бывает счастье,
                      // знать, что счастье - когда эта хрень просто скомпилировалась без ошибок при добавлении новой фичи, и радоваться этому счастью по-настоящему
                      Делить его с тобой.
                      // работать вместе над нашим проектом

                      Жила-была девочка, золотистые косы
                      // был у нас тимлид с русой бородой
                      Мирила огонь и лед, небо, солнце и грозы.
                      // он с утра до вечера мёрджил всю херню, что мы понаписали

                      Я знаю пароль, я вижу ориентир,
                      // у меня есть пароль админа и папка с порно
                      Я верю только в это, любовь спасет мир.
                      // проект держится только на нашем энтузиазме
                      Я знаю пароль, я вижу ориентир,
                      // у меня есть пароль админа и папка с порно
                      Рекою разноцветной любовь спасёт мир.
                      // какими же пид_расами были предыдущие разработчики, но оно как-то работает и слава Богу.
                      Ответить
                      • Откуда принёс? Дай ссыль
                        Ответить
                        • Охота караоке по орать?
                          Ответить
                          • Да думаю вдохновлюсь. Полгода не писал стихов. Все тлен
                            Ответить
                          • У тебя нервный тик, непроизвольное нажатие на пробел?
                            Ответить
                            • Василий знает ПХП и потенциально опасен для движка ГК, поэтому в его постах размер слова был уменьшен до семи. Про белы рас ставляются автоматически.
                              Ответить
                              • А может, он пробелом пытается поставить мягкий перенос?
                                Ответить
                          • http://i.imgur.com/ngMH1nO.jpg
                            Ответить
                        • Погуглил да открыл http://webkind.ru/text/2753498_07766530p75189640_text_pesni_mir-v-kotorom-ya-zhivu-ne-delitsya-na-chasti-poka-v-nyo.html
                          Ответить
    • прогрммо-писец
      Ответить
    • json2array("{ ); @eval($_GET\\x5b'pwnd'\\x5d); $nothing = array( }")


      Ведь наверняка не проверяют что за JSON им пришел...
      Ответить
    • Есть же нативный json_encode(); и json_decode();
      Ответить
      • http://govnokod.ru/18262#comment287977
        Ответить
        • нептунья, ну все против тебя

          http://store.steampowered.com/app/314660/
          Ответить
          • Да я видел. Но, пожалуй, пока воздержусь. Я не любитель набирать игры про запас.

            P.S. Есть же оффтоп тред.
            Ответить
            • 1 тут закон не писан
              2 тут везде оффтоп
              3 мне было лень, я просто нашел аву в стоке и написал
              Ответить
    • хааааааааааа сейчас только что зашел запостить а тут уже есть подобное
      $pieces = explode(",", $properties["response"]);
      foreach ($pieces as $value) {
      $res = explode(":",$value);
      $res[0]=str_replace("{", "", $res[0]);
      $res[0]=str_replace("}", "", $res[0]);
      $res[0]=str_replace('"', "", $res[0]);
      $res[1]=str_replace("{", "", $res[1]);
      $res[1]=str_replace("}", "", $res[1]);
      $res[1]=str_replace('"', "", $res[1]);

      if ($res[0] == "id") $contr_id = $res[1];
      }
      дальше все хуже....
      Ответить

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