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

    +164

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if (is_array($custom_data)) {
    	foreach ($custom_data as $key => $val) {
    		$session[$key] = $val;
    	}
    }

    хитрый план

    Запостил: DrFreez, 23 Апреля 2011

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

    • array_merge?
      Ответить
      • неа, не слышал (цы)
        Ответить
      • «If, however, the arrays contain numeric keys, the later value will not overwrite the original value, but will be appended.» (http://ru2.php.net/manual/en/function.array-merge.php)

        А вот это даст ожидаемый результат:
        $session = $custom_data + $session;
        Ответить
        • ключевая фраза здесь numeric keys.
          от куда вы знаете, какой результат ожидал автор этого кода?
          Ответить
          • Вообще говоря, не похоже, что там вообще будут (были?) числовые ключи. Но чем черт не шутит.
            UPD: Тьфу, на вопрос-то я не ответил. Если бы нужно было числовые ключи не заменять, а дописывать, имхо, кусочек кода был бы подлиннее.
            Ответить
    • План-кабан
      Ответить
    • if (is_array($custom_data)) {
      foreach ($custom_data as $key => $val) {
      $session[$key] = $val;
      }
      if (is_array($session)) {
      global $_SESSION;
      foreach ($session as $key => $val) {
      $_SESSION[$key] = $val;
      }
      }
      }
      Ответить
    • шикарное Г. в лучших традициях Васи П
      Ответить

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