Php 如果会话名称以前已设置,则递增该名称
我试图创建一组会话,只存储通过复选框勾选的项目数量。这些项目需要分组,并且都来自同一表单 假设我勾选了3个框,那么应该创建一个名为“组选择”1的会话,该会话的值为3。然后我返回到相同的表单,这次选择5个复选框,然后用值5进行Php 如果会话名称以前已设置,则递增该名称,php,session,Php,Session,我试图创建一组会话,只存储通过复选框勾选的项目数量。这些项目需要分组,并且都来自同一表单 假设我勾选了3个框,那么应该创建一个名为“组选择”1的会话,该会话的值为3。然后我返回到相同的表单,这次选择5个复选框,然后用值5进行group\u selection\u 2 我很难想到如何才能做到这一点。有人能告诉我正确的方向吗?//获取所有会话 // get all sessions $sessions = $_SESSION; if (!empty($sessions)) { // loo
group\u selection\u 2
我很难想到如何才能做到这一点。有人能告诉我正确的方向吗?//获取所有会话
// get all sessions
$sessions = $_SESSION;
if (!empty($sessions)) {
// loop and check the session keys
foreach ($sessions as $key => $value) {
// match group_selection_* (* = any digits)
if (preg_match('/group_selection_(?<num_key>\d)/im', $key, $matches)) {
// session group_selection_* is existed
if (isset($matches['num_key'])) {
$increment = $matches['num_key'] + 1;
$_SESSION['group_selection_' . $increment] = 'new thing...';
} else {
// not existed
$_SESSION['group_selection_1'] = 'something....';
}
}
}
}
$sessions=$\会话;
如果(!空($sessions)){
//循环并检查会话密钥
foreach($key=>$value的会话){
//匹配组\u选择\u*(*=任意数字)
if(preg_match('/group_selection_(?\d)/im',$key,$matches)){
//会话组\选择\已存在
如果(isset($matches['num_key'])){
$increment=$matches['num_key']+1;
$\u会话['group\u selection.'$increment]=“新事物…”;
}否则{
//不存在
$\会话['group\u selection\u 1']=“某物…”;
}
}
}
}
是否希望在表单提交时创建会话?还是通过ajax?或者…?@会话正在表单提交上创建。他们的创建不是问题,而是增加他们的会话名称。我想我需要创建另一个会话或其他东西,调用它,然后检查它是否已设置。如果是,++1,或者别的什么。啊,这正是我想要实现的逻辑。非常感谢。