MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Memasukkan Objek PHP Ke dalam DB MONGO

Cara termudah mungkin adalah dengan membuat objek Anda "castable" ke array.

Jika properti yang ingin Anda simpan adalah public , Anda cukup melakukan:

$array = (array)$foo;

Jika tidak, toArray metode, atau membuatnya mengimplementasikan Iterator antarmuka akan berfungsi:

class Foo implements IteratorAggregate {

   protected $bar = 'hello';

   protected $baz = 'world';

   public function getIterator() {
       return new ArrayIterator(array(
           'bar' => $this->bar,
           'baz' => $this->baz,
       ));
   }

}

Jelas, Anda juga dapat menggunakan get_object_vars , Refleksi dan semacamnya alih-alih mengkodekan daftar properti di getIterator metode.

Kemudian, cukup:

$foo = new Foo;
$array = iterator_to_array($foo);
$mongodb->selectCollection('Foo')->insert($array);

Tergantung pada bagaimana Anda ingin menyimpan objek Anda, Anda mungkin ingin menggunakan DBRefs daripada menyimpan objek bersarang sekaligus, sehingga Anda dapat dengan mudah find mereka secara terpisah setelahnya. Jika tidak, buat saja toArray your metode rekursif.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Masalah dengan instalasi Mongo DB pada Windows 8.1

  2. MongoDB - Ukuran file maksimum menggunakan GridFS

  3. Migrasi ke MongoDB:cara menanyakan GROUP BY + WHERE

  4. RuntimeError:Tugas dilampirkan ke loop yang berbeda

  5. Cara mendapatkan daftar pengguna yang ulang tahun hari ini di MongoDB