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

    +166

    1. 1
    foreach ($_GET as $xxx => $rvar) { $$xxx = $rvar; }

    может боян конешн

    Запостил: pusinsky, 18 Ноября 2011

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

    • я так понимаю extract ?
      Ответить
    • http://hostname/scriptname.php?$_SERVER[]=&$_GET[]=
      Интересно, сработает или нет.
      Ответить
      • http://hostname/scriptname.php?_SERVER[]=&_GET[]=
        думаю так сработает.

        register_globals получается)
        Ответить
        • не сработает ни так, ни так.
          Ответить
          • Кстати да, не срабатывает. А вот только не могу понять почему? Эти переменные как то защищены?

            Такая комбинация не влияет на переменную $_SERVER
            http://hostname/scriptname.php?_SERVER=1
            Ответить
            • наверно их интрепритатор определяет и наСрать ему были они определены или нет
              Ответить
              • не, интрепритатор тут нипри чём, там типа получаиться, этот, как его, ключ массива $_GET.
                Говнястые из вас хаккиры. Идите в школу - доучевайтесь.
                Ответить
                • Какой ключ, вы о чем? Тут в лоб написано:
                  http://hostname/scriptname.php?_SERVER=1
                  Почему переменная $_SERVER не становится (string)1?

                  а так создается или переопределяется переменная $_VAR нормально
                  http://hostname/scriptname.php?_VAR=1

                  Получается системные переменные как то защищены.
                  Ответить
                  • Походе меня уже заглючило. В первый раз тестировал не влияло на системные переменные. А сейчас вот такой тест:

                    http://hostname/test.php?_GET[s]=1&_GET[1s]=3

                    <?
                    foreach ($_GET as $xxx => $rvar) {
                      $$xxx = $rvar;  
                    }
                    print_r($_GET);
                    ?>


                    И выдает скрипт вот что:
                    Array
                    (
                        [s] => 1
                        [1s] => 3
                    )
                    Ответить
                    • попробуйте в скрипте жёстко указать
                      $_SERVER = `reboot`;
                      print_r($_SERVER);
                      Ответить
    • чё код делаит?
      Ответить

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