У меня есть скрипт, который помещает некоторый кириллический текст в переменные сеанса, например так: $_SESSION['cyrillic'][$y]
, где $ y - итератор, поэтому в конце массив будет выглядеть так:
[cyrillic] => Array
(
[0] => ������
[1] => ��������
[2] => ������
[3] => ������
Однако после борьбы с заголовками UTF-8 в PHP, HTML и файлах, сохраняющих наборы символов (с BOM и без нее), я обнаружил, что нет ничего плохого в настройках набора символов (очевидно), как в настройке любого другого сеанса переменная с кириллицей в тексте будет работать.
Это означает: $_SESSION['cyr']['txt'] = $cyrillic_string_here;
будет работать нормально, как показано здесь:
[cyr] => Array
(
[txt] => десять
)
Итак, что я тогда не могу понять: почему я не могу вставить кириллицу в массив, используя числовой ключ, но алфавитный? И как я могу обойти это, когда мне нужно использовать итерационный цикл?
РЕДАКТИРОВАТЬ: Это не так. Я могу вставить тот же текст в другую переменную и отобразить его, либо переменную сеанса без числовых значений ключа, и она будет работать нормально.
РЕДАКТИРОВАТЬ: Я также нашел это:
* Трудно найти документальное предложение, о котором я сейчас говорю: «На ключи в ассоциативном массиве $ _SESSION распространяются те же ограничения, что и на имена обычных переменных в PHP». *
Но я подумал, что мог бы создать массив с числовым значением, подобным этому: $ array [$ i]? Или это означает, что поскольку ключом является ASSOC, $ array ['text'] [$ i] не будет работать?