Php Laravel 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

我的Laravel Excel输入API有问题。我希望将Excel中的数据保存到数据库中,以下是我的代码、Excel和错误:

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的外观:


您收到通知说您的帖子大部分是代码,因为它是。它真正暗示的是,对问题的描述很少。真正的问题是什么?你需要什么帮助?有什么错误吗?如果有错误,我们能看到堆栈跟踪吗?另外,你的变量不是英文的,所以我们不知道它们的真正含义。你收到通知说你的帖子大部分是代码,因为它是。它真正暗示的是,对问题的描述很少。真正的问题是什么?你需要什么帮助?有什么错误吗?如果有错误,我们能看到堆栈跟踪吗?另外,你的变量不是英文的,所以我们不知道它们的真正含义。