Получение данных из сообщения выстраивает в CodeIgniter

Хорошо, таким образом, у меня есть форма, которая отправляет мне массивы в массиве POST. Я пытаюсь считать его как так:

$day = $this->input->post("days")[0];

Это не работает. PHP заявляет "неожиданный' ['". Почему это не работает?

Я зафиксировал его путем выполнения его этот путь:

$days = $this->input->post("days");
$day = $days[0];

Я решил свою проблему, мне просто любопытно относительно того, почему 1-й путь не работал.

10
задан Rocket Hazmat 24 June 2010 в 18:08
поделиться

3 ответа

Отбрасывание массива от вызовов функций не поддерживается PHP. Она реализована в SVN trunk версии PHP, так что, скорее всего, она появится в будущих версиях PHP. Пока же вам придется прибегнуть к тому, что вы делаете сейчас. Для перечислимых массивов вы также можете использовать list:

list($day) = $this->input->post("days");

См: http://php.net/list

9
ответ дан 3 December 2019 в 16:51
поделиться

Синтаксис, подобный этому:

$day = $this->input->post("days")[0];

, не поддерживается в PHP. Вы должны делать то, что делаете:

$days = $this->input->post("days");
$day = $days[0];
8
ответ дан 3 December 2019 в 16:51
поделиться

Другим подходом может быть перебор массива с помощью foreach, например так:

foreach($this->input->post("days") as $day){
    echo $day;
}
7
ответ дан 3 December 2019 в 16:51
поделиться
Другие вопросы по тегам:

Похожие вопросы: