Laravel Excel, итерация элемента для вставки данных - PullRequest
0 голосов
/ 05 апреля 2020

Мой файл Excel состоит из student id, name, and course, который я сохраняю в базе данных. Данные были разделены по полу, в котором на row[0]. Здесь я пытаюсь добиться того, как я могу повторить свои данные и вставить пол в мою базу данных .?

Образец sample.xlsx

enter image description here

//StudentController
Excel::import(new StudentsImport, request()->file('import'));
//ImportSheet
public function model(array $row)
    {
        //empty rows
        if (!isset($row[1]) || $row[0] == '#') {
            return null;
        }

        if (isset($row[1])) {
            return new Student([
                'id_number' => $row[1],
                'name' => $row[2],
                'course' => $row[3],
                'gender' => 'male || female', //<--- HOW CAN I INSERT GENDER HERE BASE ON THE JPEG ABOVE?
            ]);
        }
    }

1 Ответ

0 голосов
/ 05 апреля 2020

Вот как это может помочь вам определить свой пол:

public function model(array $row)
{        
    //empty rows
    if (!isset($row[1]) || $row[0] == '#') {
        return null;
    }

    //get the gender
    $gender = ''; // default is empty, you can also assign some default value 
    if (isset($row[0]) && (strtolower($row[0]) == 'male' || strtolower($row[0]) == 'female')) {
        $gender = $row[0];
    }


    if (isset($row[1])) {
        return new Student([
            'id_number' => $row[1],
            'name' => $row[2],
            'course' => $row[3],
            'gender' => $gender
        ]);
    }
}
...