Существуют ли ограничения размера для ключей массива PHP? Каковы ограничения в общем случае для массивов PHP?

Возможный дубликат:
Каков максимальный размер ключа для массива в PHP?

Как гласит название, мне интересно, какие ограничения для массивов PHP?

  1. Каковы пределы для ключей массива?
  2. Могу ли я использовать любую строку размера в качестве ключа?
  3. В какой момент ключи начнут сталкиваться? Я имею в виду здесь, я думал, что массивы PHP являются hashtables. Мое понимание хэш-таблиц и их хэш-функций состоит в том, что в какой-то момент две строки могут хешировать до одного значения, что дает вам столкновение. Например, было обнаружено, что MD5 не устойчив к столкновению.
  4. Каков предел размера массива php?

  1. Каковы пределы для ключей массива?

    Теоретических ограничений больше, чем размер памяти, выделенной для скрипта. Вы также можете найти доказательство того, каков максимальный размер ключа для массива в PHP?

    Здесь написано руководство по php;

    Примечание. Нет ничего сложного в том, чтобы строка стала очень большой. PHP не накладывает ограничений на размер строки; единственным ограничением является доступная память компьютера, на котором работает PHP.

    Это имеет значение, поскольку ключи в массиве могут быть строками.

  2. Могу ли я использовать любую строку размера в качестве ключа?

    Да, в зависимости от объема памяти, выделенной для скрипта. Вы можете установить размер, запустив скрипт, например, ini_set('memory_limit', '1024M'); это установленный объем памяти до одного гигабайта. Чтобы установить ограничение на неограниченную память, используйте -1 .

    НО, когда размер ключей увеличивается, вам потребуется больше энергии для работы с массивом.

  3. В какой момент ключи начнут сталкиваться?

    (Я не сейчас, если я недооцениваю свойство questions). Если вы используете все комбинации букв и цифр до бесконечной длинной строки, будут бесконечные числа комбинаций. И поэтому они никогда не столкнутся.

  4. Каков предел размера массива php?

    Он ограничен так же, как и выше, объемом памяти, выделенной для скрипта.