Я знаю, что могу делать такие вещи, как <input name="foo[]">
, но можно ли делать такие вещи, как <input name="foo[bar]">
и показать его в PHP как $_POST['foo']['bar']
?
Причина, по которой я спрашиваю, состоит в том, что я создаю огромную таблицу элементов формы (включая <select>
с несколькими <select>
), и я хочу, чтобы мои данные были организованы для сценария, к которому я отправляю POSTING. Я хочу, чтобы элементы ввода в каждом столбце имели одно и то же базовое имя, но другой идентификатор строки в качестве ключа массива. Имеет ли это смысл?
EDIT: Я уже пытался это сделать, но, по-видимому, Drupal вмешивается в то, что я пытаюсь сделать. Я думал, что я просто неправильно понял свой синтаксис. Firebug сообщает мне, что мои имена ввода построены точно так же, но мои данные возвращаются как [foo[bar]] => data
а не [foo] => array([bar] => data)
.
EDIT 2: Кажется, моя реальная проблема заключалась в моем предположении, что $form_state['values']
в Drupal будет иметь такую же иерархию массивов, что и $_POST
. Я никогда не должен был предполагать, что Drupal будет настолько разумным и интуитивным. Прошу прощения за то, что потратил ваше время. Вы можете заниматься своим бизнесом.