Mongodb PHP laravel duplicate key
Beberapa saat yang lalu, saat mengerjakan sebuah project dengan menggunakan laravel dan mongodb saya menemukan error seperti berikut :
caused by :: 11000 E11000 duplicate key error indexerror tersebut muncul saat looping tepatnya saat proses insert pada sebuah collection di mongodb contoh script :
Dalam kasus saya coding di atas akan error karena variable $arrayName memiliki nilai yang sama ketika terjadi looping yang ke dua. Kita perlu menggunakan fungsi unset($arrayName) :
- for ($i=0; $i < 5; $i++) {
- $arrayName = array('key1' => 'jono','key2' => 'paniem');
- DB::table('nama_collection')->insert($arrayName);
- }
Pada coding di atas tidak akan muncul lagi duplicate key pada proses insert di mongodb, karena variable $namaArray sudah di unset.
- for ($i=0; $i < 5; $i++) {
- $arrayName = array('key1' => 'jono','key2' => 'paniem');
- DB::table('nama_collection')->insert($arrayName);
- unset($arrayName);
- }