За последние 24 часа нас посетили 18380 программистов и 1599 роботов. Сейчас ищут 880 программистов ...

Обход регистрозависимости переменных

Тема в разделе "Прочие вопросы по PHP", создана пользователем g200, 16 дек 2013.

  1. g200

    g200 Новичок

    С нами с:
    16 дек 2013
    Сообщения:
    25
    Симпатии:
    0
    Подскажите как временно в некотором участке кода можно отключить или обойти регистрозависимость переменных ?

    Например, big_array это подключаемый внешний файл в 15 МБ, менять я его не могу, ключи в нем имеют рандомный регистр у отдельных ключей. От пользователя приходит строка всегда в нижнем регистре. Как теперь сделать так, чтобы регистр строки от пользователя и регистр ключа в массиве были одинаковыми, либо чтобы PHP подставлял переменную в виде ключа массива, но без учета ее регистра...

    Код (Text):
    1. $big_array = array('kEyS_1'=>'значение 1'...,'KEys_12637'=>'значение 12637');
    2.  
    3. $user = "keys_1";
    4.  
    5. echo $big_array["$user"]; // ошибка
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Пересобери массив с ключами в нужном виде
     
  3. g200

    g200 Новичок

    С нами с:
    16 дек 2013
    Сообщения:
    25
    Симпатии:
    0
    Там идет сортировка, как в Win8 (по имени), а ни одна из известных сортировок строк не совпадает с той, что в Win8 (по имени)
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    пересобери его просто
    foreach ($arr as $key=>$val) {
    $newarr[strtolower($key)] = $val;
    }
    unset ($arr);