Php Laravel Excel,获取数据
我的Laravel Excel输入API有问题。我希望将Excel中的数据保存到数据库中,以下是我的代码、Excel和错误:Php Laravel Excel,获取数据,php,laravel,laravel-excel,Php,Laravel,Laravel Excel,我的Laravel Excel输入API有问题。我希望将Excel中的数据保存到数据库中,以下是我的代码、Excel和错误: Excel::selectSheets('CHS1')->load($uer->file, function($reader){ $x = 1; $reader->limit(22); $cell = $reader->get(); $data = []; $dat
Excel::selectSheets('CHS1')->load($uer->file, function($reader){
$x = 1;
$reader->limit(22);
$cell = $reader->get();
$data = [];
$data['nama'] = $cell[3 - $x][5 - $x];
$data['nim'] = $cell[4 - $x][5 - $x];
$data['jk'] = $cell[5 - $x][5 - $x];
$data['ttl'] = $cell[6 - $x][5 - $x];
$data['program'] = $cell[3 - $x][8 - $x];
$data['prodi'] = $cell[4 - $x][8 - $x];
$data['gelar'] = $cell[5 - $x][8 - $x];
$data['t_masuk'] = $cell[6 - $x][8 - $x];
$data['t_keluar'] = $cell[7 - $x][8 - $x];
foreach ($data as $key => $value) {
$data[$key] = preg_replace('/^(\'?: ?)/', '', $value);
}
// Jenis kelamin
$jk = [
'Laki-laki' => 'l',
'Perempuan' => 'p'
];
$indexJk = preg_replace('/\s/', '', $data['jk']);
$data['jk'] = $jk[$indexJk];
// Bulan setting
$month = [
'Januari' => '01',
'Febuari' => '02',
'Maret' => '03',
'April' => '04',
'Mei' => '05',
'Juni' => '06',
'Juli' => '07',
'Agustus' => '08',
'September' => '09',
'Oktober' => '10',
'November' => '11',
'Desember' => '12',
];
$ttl = explode(',', $data['ttl']);
$data['tempat'] = $ttl[0];
$tanggal = preg_replace('/^ ?/', '', $ttl[1]);
$tanggal = explode(' ', $tanggal);
$tgl = $tanggal[0];
$bln = $month[$tanggal[1]];
$thn = $tanggal[2];
$tanggal = $thn . '/' . $bln . '/' . $tgl;
$data['tgl'] = Carbon::parse($tanggal)->format('Y:m:d');
// Nilai
$nilai = [];
for($i = 9; $i < count($cell) - 2; $i++){
$nilai['matkul'][$i] = $cell[$i][5 - $x];
}
for($i = 9; $i < count($cell) - 2; $i++){
$nilai['smt'][$i] = $cell[$i][2 - $x];
}
for($i = 9; $i < count($cell) - 2; $i++){
$kode = [
'char' => $cell[$i][3 - $x],
'num' => $cell[$i][4 - $x]
];
$nilai['kode'][$i] = json_encode($kode);
}
for($i = 9; $i < count($cell) - 2; $i++){
$nilai['nilai'][$i] = $cell[$i][6 - $x];
}
for($i = 9; $i < count($cell) - 2; $i++){
$nilai['nilai_sk'][$i] = $cell[$i][7 - $x];
}
for($i = 9; $i < count($cell) - 2; $i++){
$nilai['krd'][$i] = $cell[$i][8 - $x];
}
for($i = 9; $i < count($cell) - 2; $i++){
$nilai['krp'][$i] = $cell[$i][9 - $x];
}
for($i = 9; $i < count($cell) - 2; $i++){
$nilai['akw'][$i] = $cell[$i][10 - $x];
}
$newNilai = [];
for($i = 9; $i < count($nilai['smt']) + 9; $i++){
foreach ($nilai as $key => $value) {
$newNilai[$i][$key] = $nilai[$key][$i];
}
}
$mahasiswa = Nil_mahasiswas::where('nim', $data['nim'])->get()->first();
$tbnilai;
if($mahasiswa){
$mahasiswa->nama = $data['nama'];
$mahasiswa->nim = $data['nim'];
$mahasiswa->jk = $data['jk'];
$mahasiswa->tempat = $data['tempat'];
$mahasiswa->tgl = $data['tgl'];
$mahasiswa->program = $data['program'];
$mahasiswa->prodi = $data['prodi'];
$mahasiswa->gelar = $data['gelar'];
$mahasiswa->t_masuk = $data['t_masuk'];
$mahasiswa->t_keluar= $data['t_keluar'];
$mahasiswa->save();
$id_mahasiswa = $mahasiswa->id;
$tbnilai = Nilais::where('id_mahasiswa', $id_mahasiswa)->get();
for($i = 0; $i < 9; $i++){
$nilai = $newNilai[$i+9];
$tbnilai = Nilais::where('id_mahasiswa', $id_mahasiswa)->get()[$i];
$tbnilai->delete();
CommonController::createNilai($tbnilai, $nilai, $id_mahasiswa);
}
}else{
Nil_mahasiswas::create([
'nama' => $data['nama'],
'nim' => $data['nim'],
'jk' => $data['jk'],
'tempat'=> $data['tempat'],
'tgl' => $data['tgl'],
'program'=> $data['program'],
'prodi' => $data['prodi'],
'gelar' => $data['gelar'],
't_masuk'=> $data['t_masuk'],
't_keluar'=> $data['t_keluar']
]);
$mahasiswa = Nil_mahasiswas::where('nim', $data['nim'])->get()->first();
$id_mahasiswa = $mahasiswa->id;
for($i = 0; $i < 9; $i++){
$nilai = $newNilai[$i+9];
CommonController::createNilai(new Nilais, $nilai, $id_mahasiswa);
}
}
});
Excel::selectSheets('CHS1')->load($uer->file,function($reader){
$x=1;
$reader->limit(22);
$cell=$reader->get();
$data=[];
$data['nama']=$cell[3-$x][5-$x];
$data['nim']=$cell[4-$x][5-$x];
$data['jk']=$cell[5-$x][5-$x];
$data['ttl']=$cell[6-$x][5-$x];
$data['program']=$cell[3-$x][8-$x];
$data['prodi']=$cell[4-$x][8-$x];
$data['gelar']=$cell[5-$x][8-$x];
$data['t_masuk']=$cell[6-$x][8-$x];
$data['t_keluar']=$cell[7-$x][8-$x];
foreach($key=>$value形式的数据){
$data[$key]=预替换('/^(\'?:?)/','','$value);
}
//杰尼斯·克拉明
$jk=[
‘Laki Laki’=>‘l’,
“Perempuan”=>“p”
];
$indexJk=preg_replace(“/\s/”,“$data['jk]”);
$data['jk']=$jk[$indexJk];
//布朗背景
$month=[
'Januari'=>'01',
“Febuari”=>“02”,
“Maret”=>“03”,
“四月”=>“04”,
“Mei”=>“05”,
'Juni'=>'06',
'朱莉'=>'07',
“Agustus”=>“08”,
“九月”=>“09”,
'Oktober'=>'10',
“11月”=>“11日”,
“Desember”=>“12”,
];
$ttl=分解(',',$data['ttl']);
$data['tempat']=$ttl[0];
$tanggal=preg_replace(“/^?/”,“$ttl[1]);
$tanggal=爆炸(“”,$tanggal);
$tgl=$tanggal[0];
$bln=$month[$tanggal[1]];
$thn=$tanggal[2];
$tanggal=$thn.'/'.$bln.'/'.$tgl;
$data['tgl']=Carbon::parse($tanggal)->格式('Y:m:d');
//尼莱
$nilai=[];
对于($i=9;$i<计数($cell)-2;$i++){
$nilai['matkul'][$i]=$cell[$i][5-$x];
}
对于($i=9;$i<计数($cell)-2;$i++){
$nilai['smt'][$i]=$cell[$i][2-$x];
}
对于($i=9;$i<计数($cell)-2;$i++){
$kode=[
'char'=>$cell[$i][3-$x],
'num'=>$cell[$i][4-$x]
];
$nilai['kode'][$i]=json_encode($kode);
}
对于($i=9;$i<计数($cell)-2;$i++){
$nilai['nilai'][$i]=$cell[$i][6-$x];
}
对于($i=9;$i<计数($cell)-2;$i++){
$nilai['nilai_sk'][$i]=$cell[$i][7-$x];
}
对于($i=9;$i<计数($cell)-2;$i++){
$nilai['krd'][$i]=$cell[$i][8-$x];
}
对于($i=9;$i<计数($cell)-2;$i++){
$nilai['krp'][$i]=$cell[$i][9-$x];
}
对于($i=9;$i<计数($cell)-2;$i++){
$nilai['akw'][$i]=$cell[$i][10-$x];
}
$newNilai=[];
对于($i=9;$i$value){
$newNilai[$i][$key]=$nilai[$key][$i];
}
}
$mahasiswa=Nil_mahasiswas::where('nim',$data['nim'])->get()->first();
十亿美元;
如果($mahasiswa){
$mahasiswa->nama=$data['nama'];
$mahasiswa->nim=$data['nim'];
$mahasiswa->jk=$data['jk'];
$mahasiswa->tempat=$data['tempat'];
$mahasiswa->tgl=$data['tgl'];
$mahasiswa->program=$data['program'];
$mahasiswa->prodi=$data['prodi'];
$mahasiswa->gelar=$data['gelar'];
$mahasiswa->t_masuk=$data['t_masuk'];
$mahasiswa->t_keluar=$data['t_keluar'];
$mahasiswa->save();
$id_mahasiswa=$mahasiswa->id;
$tbnilai=Nilais::where('id_mahasiswa',$id_mahasiswa)->get();
对于($i=0;$i<9;$i++){
$nilai=$newNilai[$i+9];
$tbnilai=Nilais::where('id_mahasiswa',$id_mahasiswa)->get()[$i];
$tbnilai->delete();
CommonController::createNilai($tbnilai,$nilai,$id_mahasiswa);
}
}否则{
Nil_mahasiswas::创建([
'nama'=>$data['nama'],
'nim'=>$data['nim'],
'jk'=>$data['jk'],
'tempat'=>$data['tempat'],
'tgl'=>$data['tgl'],
“程序”=>$data[“程序”],
'prodi'=>$data['prodi'],
'gelar'=>$data['gelar'],
't_masuk'=>$data['t_masuk'],
't_keluar'=>$data['t_keluar']
]);
$mahasiswa=Nil_mahasiswas::where('nim',$data['nim'])->get()->first();
$id_mahasiswa=$mahasiswa->id;
对于($i=0;$i<9;$i++){
$nilai=$newNilai[$i+9];
CommonController::createNilai(新nilai,$nilai,$id_mahasiswa);
}
}
});
这就是我的Excel的外观:
您收到通知说您的帖子大部分是代码,因为它是。它真正暗示的是,对问题的描述很少。真正的问题是什么?你需要什么帮助?有什么错误吗?如果有错误,我们能看到堆栈跟踪吗?另外,你的变量不是英文的,所以我们不知道它们的真正含义。你收到通知说你的帖子大部分是代码,因为它是。它真正暗示的是,对问题的描述很少。真正的问题是什么?你需要什么帮助?有什么错误吗?如果有错误,我们能看到堆栈跟踪吗?另外,你的变量不是英文的,所以我们不知道它们的真正含义。