Cakephp 3如何在数据库中保存单个日期

Bah*_*uee 5 cakephp-3.0

我有请假申请表。如果用户请假2/3天,则请假日期应单独存储到数据库中。我已经申请了2天,假设我选择的日期为20-10-2019和21-10- 2019年请假。但是它仅将一项存储到数据库中。date_form和date_to是我的列名。我想分开日期。示例:date_from:20-10-2019 date_to:20-10-2019 and date_from:21-10-2019 date_to:21-10-2019。但现在它存储了date_from:20-10-2019 date_to:21-10-2019。谁可以帮我这个事?

我试过一些代码:

            else if($leaveRequest->no_of_days > 1 && $leaveRequest->no_of_days < 7)
            {
            for($i = 0 ; $i < $leaveRequest->no_of_days; $i++)
            {
                $day = $i. ' day';
                $var = $this->EmpLeaves->newEntity();

                if($i == 0)
                {
                $var->date_from = date('Y-m-d', strtotime($this->request->getData(['date_from'])));
                $var->date_to = date('Y-m-d', strtotime($this->request->getData(['date_from'])));
                }

                else
                {
                $var->date_from = date('Y-m-d', strtotime($day,strtotime($this->request->getData(['date_from']))));
                $var->date_to = date('Y-m-d', strtotime($day,strtotime($this->request->getData(['date_from']))));
                }

                $var->employee_id = $this->Auth->user('id');
                $var->employee_name = $this->request->getData(['employee_name']);
                $var->reporting_managerId = $this->request->getData(['reporting_managerId']);
                $var->leave_type = $this->request->getData(['leave_type']);
                // $var->no_of_days = $this->request->getData(['no_of_days']);
                 $var->no_of_days = 1;
                $var->half_day = $this->request->getData(['half_day']);
                $var->leave_reason = $this->request->getData(['leave_reason']);
                $var->reliever = $this->request->getData(['reliever']);
                $valueSaved = $this->EmpLeaves->save($var);
            }

            if($valueSaved)
            {
                //newcode for sending email
                 $applierEmail = $this->Auth->user('office_email');
                $applierName  = $this->Auth->user('first_name') . ' ' . $this->Auth->user('last_name');

            }
            else
            {
                $this->Flash->error(__('Please check the message'));
            }
        }
Run Code Online (Sandbox Code Playgroud)

小智 0

         else if($leaveRequest->no_of_days > 1 && $leaveRequest->no_of_days < 7)
        {
        for($i = 0 ; $i < $leaveRequest->no_of_days; $i++)
        {
            $day = $i. ' day';
            $var = $this->EmpLeaves->newEntity();

           

            else
            
            $var->date_from = date('Y-m-d', strtotime($day,strtotime($this->request->getData(['date_from']))));
            $var->date_to = date('Y-m-d', strtotime($day,strtotime($this->request->getData(['date_to']))));
            

            $var->employee_id = $this->Auth->user('id');
            $var->employee_name = $this->request->getData(['employee_name']);
            $var->reporting_managerId = $this->request->getData(['reporting_managerId']);
            $var->leave_type = $this->request->getData(['leave_type']);
            $var->no_of_days = $this->request->getData(['no_of_days']);
            $var->half_day = $this->request->getData(['half_day']);
            $var->leave_reason = $this->request->getData(['leave_reason']);
            $var->reliever = $this->request->getData(['reliever']);
            $valueSaved = $this->EmpLeaves->save($var);
        }

        if($valueSaved)
        {
            //newcode for sending email
             $applierEmail = $this->Auth->user('office_email');
            $applierName  = $this->Auth->user('first_name') . ' ' . $this->Auth->user('last_name');

        }
        else
        {
            $this->Flash->error(__('Please check the message'));
        }
    }
Run Code Online (Sandbox Code Playgroud)