Maison php教程 PHP开发 Méthode de bibliothèque PHP pour interroger l'ID du document dans Mongodb

Méthode de bibliothèque PHP pour interroger l'ID du document dans Mongodb

Dec 23, 2016 pm 12:58 PM
mongodb

Mon nouveau travail chez IBM est en tant que membre de l'équipe de support au développement. Cela signifie que je passe la plupart de mon temps à travailler avec des bases de données. Dans mon flux de travail, j'ai passé du temps avec MongoDB, qui est une base de données de documents. Mais j'ai rencontré quelques problèmes lors de la récupération des enregistrements par ID. Le code ci-dessous est la version finale, je peux le citer directement lorsque je rencontrerai des problèmes similaires à l'avenir. Si vous en avez également besoin, j'espère que ce qui suit vous sera utile.

MongoDB et identifiants

Lorsque j'insère des données dans une collection, je ne définis pas le champ _id si ce champ est vide, alors MongoDB générera automatiquement un identifiant ; à utiliser, ce qui est très agréable pour moi. Cependant, cela crée des problèmes lorsque j'utilise des identifiants générés par MongoDB.

Si j'utilise db.posts.find() pour récupérer mes données (ma collection s'appelle posts), alors les données ressemblent à ceci :

{ "_id " : ObjectId("575038831661d710f04111c1"), ...

Donc, si je souhaite récupérer les données à l'aide de l'ID, je dois également inclure la méthode ObjectId pour accéder à l'ID.

Utilisation de la bibliothèque PHP

Lorsque j'ai utilisé PHP pour ce faire, je n'ai pas trouvé d'exemple approprié lors de l'utilisation de cette nouvelle bibliothèque PHP (Cependant, cette bibliothèque de classes est en effet une très bonne bibliothèque). Dans les versions précédentes, cette bibliothèque était implémentée à l'aide d'une classe appelée MongoID. Mais je sais que ce n’est pas ce que je veux – mais je peux réellement inspecter le document grâce à ce cours. Il est donc utile de connaître cette méthode si vous ne pouvez trouver que des exemples du code précédent.
Pour transmettre un identifiant à MongoDB à l'aide de cette bibliothèque PHP, vous devez construire une instance MongoDBBSONObjectID. L'exemple suivant récupère des documents dans un blog par ID de document.

$post = $posts->findOne(["_id" => new MongoDBBSONObjectID($id)]);

Alors, je vais pour mettre à jour cet enregistrement - ce billet de blog contient également des commentaires intégrés dans cet enregistrement, alors ajoutez un tableau à la collection de commentaires dans cet enregistrement avec le _id,

$result = $posts->updateOne(
   ["_id" => new MongoDB\BSON\ObjectID($id)],
   ['$push' => [
"comments" => $new_comment_data
      ]
]);
Copier après la connexion

Enfin, j’espère que cet article sera utile à tout le monde. Merci à tous pour votre soutien à ce site !

Pour plus de bibliothèques PHP, veuillez prêter attention au site Web PHP chinois pour des articles connexes sur la façon d'interroger l'ID de document dans Mongodb !


Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

La différence entre nodejs et vuejs La différence entre nodejs et vuejs Apr 21, 2024 am 04:17 AM

Node.js est un environnement d'exécution JavaScript côté serveur, tandis que Vue.js est un framework JavaScript côté client permettant de créer des interfaces utilisateur interactives. Node.js est utilisé pour le développement côté serveur, comme le développement d'API de service back-end et le traitement des données, tandis que Vue.js est utilisé pour le développement côté client, comme les applications monopage et les interfaces utilisateur réactives.

Que faire si Navicat expire Que faire si Navicat expire Apr 23, 2024 pm 12:12 PM

Les solutions pour résoudre les problèmes d'expiration de Navicat incluent : renouveler la licence ; désinstaller et réinstaller ; désactiver les mises à jour automatiques ; utiliser la version gratuite de Navicat Premium ; contacter le support client de Navicat.

Est-il difficile d'apprendre nodejs sur le front-end ? Est-il difficile d'apprendre nodejs sur le front-end ? Apr 21, 2024 am 04:57 AM

Pour les développeurs front-end, la difficulté d'apprendre Node.js dépend de leur base JavaScript, de leur expérience en programmation côté serveur, de leur familiarité avec la ligne de commande et de leur style d'apprentissage. La courbe d'apprentissage comprend des modules d'entrée de gamme et de niveau avancé axés sur les concepts fondamentaux, l'architecture côté serveur, l'intégration de bases de données et la programmation asynchrone. Dans l'ensemble, apprendre Node.js n'est pas difficile pour les développeurs qui ont une base solide en JavaScript et sont prêts à investir du temps et des efforts, mais pour ceux qui manquent d'expérience pertinente, il peut y avoir certains défis à surmonter.

Comment connecter Navicat à MongoDB Comment connecter Navicat à MongoDB Apr 24, 2024 am 11:27 AM

Pour vous connecter à MongoDB à l'aide de Navicat, vous devez : Installer Navicat Créer une connexion MongoDB : a. Entrez le nom de connexion, l'adresse de l'hôte et le port b. Entrez les informations d'authentification (si nécessaire) Ajoutez un certificat SSL (si nécessaire) Vérifiez la connexion. Enregistrez la connexion

Quels sont les modules couramment utilisés dans nodejs ? Quels sont les modules couramment utilisés dans nodejs ? Apr 21, 2024 am 04:34 AM

Les modules les plus couramment utilisés dans Node.js incluent : Module de système de fichiers pour les opérations sur les fichiers. Module réseau pour la communication réseau. Module de flux pour le traitement des flux de données. Module de base de données pour interagir avec les bases de données. D'autres modules utilitaires tels que le chiffrement, les chaînes de requête, l'analyse de chaînes et le framework HTTP.

Quelle base de données est bonne pour nodejs ? Quelle base de données est bonne pour nodejs ? Apr 21, 2024 am 05:06 AM

Pour les applications Node.js, le choix d'une base de données dépend des exigences de l'application. Les bases de données NoSQL MongoDB offrent de la flexibilité, Redis offre une simultanéité élevée, Cassandra gère les données de séries chronologiques et Elasticsearch est dédié à la recherche. La base de données SQL MySQL offre d'excellentes performances, PostgreSQL est riche en fonctionnalités, SQLite est léger et Oracle Database est complet. Lors du choix, tenez compte des types de données, des requêtes, des performances, du caractère transactionnel, de la disponibilité, des licences et du coût.

A quoi sert net4.0 A quoi sert net4.0 May 10, 2024 am 01:09 AM

.NET 4.0 est utilisé pour créer une variété d'applications et offre aux développeurs d'applications des fonctionnalités riches, notamment : programmation orientée objet, flexibilité, architecture puissante, intégration du cloud computing, optimisation des performances, bibliothèques étendues, sécurité, évolutivité, accès aux données et mobile. soutien au développement.

Comment connecter nodejs à la base de données Comment connecter nodejs à la base de données Apr 21, 2024 am 05:07 AM

Étapes pour se connecter à une base de données dans Node.js : Installez le package MySQL, MongoDB ou PostgreSQL. Créez un objet de connexion à la base de données. Ouvrez une connexion à une base de données et gérez les erreurs de connexion.

See all articles