gpt4 book ai didi

php - 从 Laravel session 数组中删除项目

转载 作者:行者123 更新时间:2023-12-03 01:01:45 25 4
gpt4 key购买 nike

我正在尝试从 Laravel session 数组中删除项目,但到目前为止还没有成功。

我使用 Session::push() 方法将值存储在 Session 数组中:

  Session::push('event_date_display', Input::get('event_date'));
Session::push('event_start_display', Input::get('event_start'));
Session::push('event_entry_display', Input::get('event_entry'));
Session::push('event_end_display', Input::get('event_end'));

我可以像普通数组一样访问值:

        @for($i=0;$i<Session::get('dates');$i++)
<tr>
<td>{{ Session::get('event_date_display')[$i] }}</td>
<td>{{ Session::get('event_start_display')[$i] }}</td>
<td>{{ Session::get('event_entry_display')[$i] == '' ? '-' : Session::get('event_entry_display')[$i] }}</td>
<td>{{ Session::get('event_end_display')[$i] == '' ? '-' : Session::get('event_end_display')[$i] }}</td>
<td><a href="{{URL::route('termin-loeschen', $i)}}" class="del"><span class="icon-spam"></span>Loeschen {{ $i }}</a></td>
</tr>
@endfor

但我不知道如何删除它们。我尝试了 Session::forget('event_date_display')[$index],但这会删除整个数组。然后我尝试循环和取消设置,这也不起作用。如有任何帮助,我们将不胜感激。

最佳答案

当您调用 Session::forget('event_data_display')[$index] 时,$index 变量不会传递到 forget() 方法。所以 Laravel 不会看到它,并且会取消设置 Session 数组的整个“event_data_display”索引。

要取消设置该索引处的值,您可能需要执行以下操作:

$event_data_display = Session::get('event_date_display');
unset($event_data_display[$index]);
Session::set('event_data_display', $event_data_display);

Laravel 的 Session 确实支持通过指定索引添加到数组,如下所示:

Session::push('user.teams', 'developers');

因此您也可以像这样访问数组的索引:

Session::forget('event_data_display.' . $i);

我还没尝试过,但值得一试。

当您调用 Session::get('event_data_display')[$i] 时,之所以有效,是因为 PHP 从 Session::get('event_data_display' 中检索数组值) before 它查找存储在 $i 索引中的值。

当您调用 Session::forget('event_data_display') 时,forget() 方法只能对传递给它的内容进行操作。

关于php - 从 Laravel session 数组中删除项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21242401/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com