geoNear()
metode pembuat kueri tidak dimaksudkan untuk digunakan pada bidang. near()
adalah metode pembangun yang akan mengikuti field()
fokus. Anda dapat melihat apa yang dilakukan kedua metode pembangun ini di Builder.php
dalam proyek doktrin/mongodb. Perhatikan bahwa geoNear()
mengubah jenis kueri (mirip dengan apa update()
melakukan). Jenis kueri kemudian diperiksa di Kueri. php
(ikuti pernyataan switch) dan tentukan bagaimana kami mengeluarkan kueri pada koleksi. Beberapa adalah operasi kueri yang sebenarnya, tetapi hal-hal seperti map/reduce dan geoNear adalah perintah.
Lihat apakah kode berikut berfungsi:
$dm->createQueryBuilder('MyBundle:Location')
->geoNear($geocodes['lat'],$geocodes['lon'])
->field('id')->in($arrayIds)
->getQuery()->execute()->toArray();
Jika tidak, harap debug nilai yang diteruskan Query.php ke Collection::near()
metode. Atau, Anda dapat men-debug seluruh larik kueri yang dihasilkan oleh pembuat dengan menggunakan Query::getQuery()
metode.