如何在codeigniter中单击按钮后删除一些会话数组段

Men*_*sam 9 php arrays session codeigniter

我怎样才能做到这一点.请帮我.

这是我的控制器功能

public function payment_plan() {

    $result = new stdClass();
    $result->status = FALSE;
    $post_data = $this->input->post();
    if ($post_data) {
        $payment_plan = $post_data['payment_plan'];
        $value = $post_data['value'];

        $deleted_plan = $this->input->post('key');

        $payment_plans = $payment_plan."/".$value.",";            

        $payment_session = $this->session->userdata('payment_plans');
        if($payment_session == NULL){
            $array_one = array();
            array_push($array_one, $payment_plans);
            $this->session->set_userdata('payment_plans', $array_one);
        }  else {
           $session_two=  $this->session->userdata('payment_plans');
           array_push($session_two, $payment_plans);               
           $this->session->set_userdata('payment_plans', $session_two);
        }

        $final_session = $this->session->userdata('payment_plans');

        $this->data['payment_plans'] = $final_session;
        //var_dump($final_session);
        $result->status = TRUE;
        $this->load->view('cms/payment_plan', $this->data);
    }
}
Run Code Online (Sandbox Code Playgroud)

如果我点击视图页面中的删除按钮$deleted_plan填充通过jQuery.

这是我的jQuery代码

$(".key").click(function () {

    var key = $(this).attr('id');        

    jQuery.ajax({
        type: "POST",
        url: "<?php echo base_url(); ?>" + "property" + "/" + "payment_plan",
        dataType: 'html',
        data: {key: key,payment_plan: payment_plan, value: value},
        success: function (data) {
            if (data) {
                // $("#payment_plans").html(data);
            }
        }
    });
});
Run Code Online (Sandbox Code Playgroud)

我的问题是我单击删除按钮后删除会话数组中的数组段.

小智 3

试试这个,希望有帮助

if($deleted_plan)
{
    foreach($final_session as $k => $session)
    {
         if(isset($session[$deleted_plan]))
         {
            unset($final_session[$k][$deleted_plan]);
         }
    }
    $final_session = array_values($final_session);
    $this->session->set_userdata('payment_plans', $final_session);
}
Run Code Online (Sandbox Code Playgroud)