excel - Laravel excel,迭代项目以插入数据
问题描述
我的 excel 文件由 student id, name, and course
我保存在数据库中的文件组成。数据按性别分开,其中row[0]
. 我在这里想要实现的是如何迭代我的数据并在我的数据库中插入性别。?
样本sample.xlsx
//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?
]);
}
}
解决方案
以下是可以帮助您确定性别的方法:
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
]);
}
}
推荐阅读
- azure - Azure Active Directory JWT 公钥更改
- javascript - 使用单个反应组件编辑嵌套对象属性的最佳方法?
- bash - ssh bash -c 重定向到文件不起作用
- python - 如何正确导入 python-keycloak
- swift - 自 iOS 13 起无法更改 UISearchTextField 的大小
- java - 导出到 jar 后找不到 Spring Boot application.properties
- docker - 创建容器时,我遇到了 docker npm install 问题
- ruby - 在 Ruby 中执行冒泡排序的最佳方法是什么?
- javascript - 从主站点操作异地 iframe 布局
- python - 如何减少包含 2 个 for 循环的代码的运行时间?