TL;DR
Kelas MongoClient
adalah bagian dari mongo paket PECL lama tetapi tidak lagi dari paket mongodb terbaru.
Dan karena Anda memiliki mongodb
ekstensi diinstal, dan bukan mongo
satu, ini sebabnya Anda mendapatkan kesalahan
Fatal error: Class 'MongoClient' not found
Pada repo github driver MongoDB PHP, catatan rilis tentang versi 1.0.0 menyarankan pengembang untuk menggunakan MongoDB\Driver\Manager
bukannya MongoClient
Perubahan dari ekstensi mongo lawas kami
Yang paling signifikan, kelas MongoClient, MongoDB, dan MongoCollection driver lama telah ditinggalkan oleh kelas MongoDB\Driver\Manager, yang merupakan gerbang baru untuk menghubungkan dan mengeksekusi kueri, perintah, dan operasi penulisan.
Jadi, inilah dokumentasi kelas pengganti dan cuplikan kode yang seharusnya menggantikan milik Anda :
$m = new MongoDB\Driver\Manager("mongodb://localhost:27017");
Saat dokumentasi memintanya, kelas tidak digunakan lagi.
Peringatan Ekstensi yang mendefinisikan kelas ini tidak digunakan lagi. Sebagai gantinya, ekstensi MongoDB harus digunakan. Alternatif untuk kelas ini meliputi:
- MongoDB\Driver\Manager
Dari apa yang saya baca di riwayat rilis repositori github mereka, kelas yang Anda coba gunakan telah usang sejak versi mongodb 1.0.0
, jadi, pada versi 1.6.0
ya, kelas ini bahkan bukan bagian dari dll
lagi.
Itu dikonfirmasi oleh masalah ini di github mereka
derickr berkomentar pada 16 April
MongoClient adalah kelas dari legacydriver lama dan tidak seharusnya tersedia di yang ini. Driver baru memiliki \MongoDB\Driver\Manager, dan, perpustakaan yang menyertainya memiliki\MongoDB\Client.
Anda juga perlu menginstal ekstensi lama (pecl installmongo) dan menggunakan PHP 5.x, atau memperbarui kode Anda untuk menggunakan kelas driver baru ini karena driver lama tidak tersedia untuk PHP 7. Ada panduan peningkatan di http:// mongodb.github.io/mongo-php-library/upgrade-guide/
Cara lain, seperti yang disarankan oleh anggota MongoDB yang dikutip di sini di atas adalah dengan menggunakan ekstensi pecl ini:https://pecl.php.net/package/mongo alih-alih https://pecl.php.net/package/mongodb tapi tolong juga perhatikan peringatan di sana yang menyatakan:
Paket ini telah digantikan, tetapi masih dipertahankan untuk bug dan perbaikan keamanan.