Operace CRUD pro MongoDB v PHP

Obsah
Webové aplikace se obecně zaměřují na čtyři základní operace, které potřebují provést proti svému systému trvalosti nebo Databáze, tyto operace jsou považovány za klíčové, když se učíme vyvíjet pro toto prostředí, odkazujeme na Vytvářet, číst, aktualizovat a mazat také známý jako CRUD pro jeho zkratku v angličtině.
MongoDB díky jeho řidiči za PHP, nám umožňuje provádět tyto čtyři operace velmi jednoduchým způsobem, ale být manažerem Nerelační databáze„Nemůžeme upadnout do omylu, když budeme se všemi věcmi zacházet tak, jako bychom používali relační systém, jako je MySQL nebo PostgreSQL.
PožadavkyAbychom mohli tento tutoriál sledovat, musíme mít verzi MongoDB v našem testovacím prostředí, kromě stažení a aktivace odpovídajícího ovladače pro PHP, Pro více informací o tom, jak splnit tyto požadavky, se můžete podívat na následující tutoriál.
MongoDB byl vytvořen tak, aby byl velmi efektivní v transakcích a operacích, tímto způsobem můžete řešit skutečné životní problémy bez ztráty výkonu. A CRUD sama o sobě nevyžaduje mnoho výpočetního výkonu, ale když na nás narazí tisíce požadavků Databáze za krátkou dobu vidíme, jak MongoDB nám pomáhá udržovat výkon.
Sbírky a dokumenty jsou velmi výkonné entity, protože bez definované struktury můžeme ukládat data, která chceme, udržovat čistý a uspořádaný obraz, navíc můžeme přistupovat k datům v jednoduchých dotazech, které nám v relačních modelech mohly přenést mezilehlé dotazy. Mnoho tabulek.
The Databáze v MongoDB jsou známé jako sbírky, proto s nimi nemůžeme zacházet Databáze tradiční, ne -li jako soubor dokumentů, které jsou seskupeny pod derivátor s názvem.
Vytváření kolekceK vytvoření kolekce nepotřebujeme žádný speciální příkaz, jednoduše stejným příkazem, který vybereme, pokud neexistuje, MongoDB Bude mít na starosti vytvoření nového se zadaným názvem.
Tato jednoduchost nám usnadňuje práci, navíc snižuje množství kódu, který musíme do našich aplikací umístit. Podívejme se na následujícím obrázku na ukázkový kód, pomocí kterého můžeme vybrat kolekci MongoDB:

Zde vidíme, jak nejprve vytvoříme objekt třídy Mongo (), to je zahrnuto při instalaci odpovídajícího ovladače, pak jednoduše pomocí objektu a zadáním názvu Databáze je vybráno nebo vytvořeno. V tuto chvíli musíme být opatrní, protože MongoDB nevrátí chybu, pokud Databáze neexistuje, vytvoří pouze nové, takže musíme dvakrát zkontrolovat jména, která píšeme.
Nakonec můžeme vytvořit kolekci uvnitř Databáze nazývané směry, a díky tomu budeme mít základnu, na které budeme moci provádět naše operace CRUD.
Aby bylo možné provádět další operace CRUD Nejprve musíme mít data, a proto se první věc, kterou se naučíme, je vytvářet dokumenty nebo vkládat záznamy, jak nejlépe vyhovuje našemu technickému jazyku.
Díky řidiči MongoDBJednoduše musíme vytvořit uspořádání nebo pole se strukturou a potřebnými daty pro náš nový záznam a poté zavolat metodu vložte () způsob připojení. Nepotřebujeme mít definovanou strukturu ani pro ni dodržovat vzor, ​​pokud dokument má pole a jiný nikoli, proces není ovlivněn.
Podívejme se na následujícím obrázku na zdrojový kód, který vysvětluje výše uvedený proces:

K této metodě existuje alternativa vložte () a je to metoda Uložit (), rozdíl je v tom Uložit () pokud je zadán jedinečný identifikátor a ten existuje, stávající záznam bude aktualizován o nová data.
V komunitě vývojářů navrhují více pracovat s Uložit () s čím vložte () ke generování kódu, který lze znovu použít, ale rozhodnutí je v rukou každého z nich.
Standardně je metoda vložení v MongoDB je asynchronní, to znamená, že zatímco Databáze vkládáte nebo aktualizujete záznam PHP pokračuje ve své popravě, aniž by se zhroutil. Výsledkem tohoto chování je, že aplikace běží rychleji, i když databázový stroj ne.
Protože toto chování pro nás nebude vždy užitečné, můžeme ho přinutit, aby se choval synchronně předáním parametru bezpečný při provádění operace to způsobí PHP počkejte na odpověď od MongoDB než budete pokračovat v provádění jeho pokynů. Struktura parametrů bezpečný je následující:
$ collection-> insert ($ address, array ('safe' => true));

Ve výchozím nastavení a pokud neurčíme jinak, MongoDB automaticky generuje primární klíče dokumentů pod názvem _id, při vytváření a vložte () synchronně se klíč nastaví a umístí do pole, které jsme právě vložili.
Pokud tedy chceme vědět, co je jedinečný identifikátor, musíme pouze konzultovat tuto vlastnost pole, pokud budeme postupovat podle předchozího příkladu, stačilo by pouze provést následující:
$ id = $ kolekce ['_ id'];

Nyní přejdeme k druhé operaci, kterou je načtení informací, které máme v našich dokumentech resp Databáze. Zde můžeme zadávat dotazy na primární klíč přímo nebo na jakoukoli jinou kombinaci vlastností našeho dokumentu.
Pro vyhledávání jednoduše použijeme metodu Najdi jednu () a k tomu předáme pole se všemi prvky, které budeme filtrovat. Podívejme se na následujícím obrázku na dotaz pomocí primárního klíče a jiný pomocí dalších vlastností dokumentu:

Všimneme -li si zde, pro hledání podle primárního klíče je první věcí, kterou vytvoříme, objekt typu MongoId a jste ohromeni jeho hodnotou, to je klíčové pro správné fungování všeho. Na druhou stranu při dotazování vlastností stačí umístit hodnotu uvnitř pole, aniž byste museli vytvářet objekty.
Výchozí MongoDB vrátí kompletní dokument, jakmile nalezne shodu, takže pokud od něj nechceme více než jedno nebo několik dat, musíme jej zadat v druhém parametru, což je pole vlastností nebo polí, která chceme , podívejme se v následujícím kódu, jak to lze provést:
$ result = $ collection-> findone (array ('_id' => $ id), array ('first name', 'last name'));

Při umístění předchozího kódu bude mít proměnná výsledku pole, které obsahuje pouze vlastnosti jména a příjmení dokumentu, které odpovídají kritériím hledání.
Nyní přejdeme ke třetí operaci, jedná se o aktualizaci dokumentu již vytvořeného v naší kolekci, zde musíme být opatrní, protože pokud nevložíme správný formulář, můžeme místo aktualizace nebo přidání vlastnosti přepsat původní dokument .
Aby se předešlo nejasnostem, doporučuje se použít $ sada což je operátor, který říká MongoDB že pokud parametr existuje, bude aktualizován odeslanou hodnotou, a pokud neexistuje, bude vytvořen. To nám umožňuje vyhnout se chybám v naší aplikaci a ještě lépe nám umožňuje poskytnout naší aplikaci požadovanou funkčnost. Podívejme se, jak to funguje:

ZVĚTŠIT

Tehdy jsme si uvědomili, jak můžeme v tomto případě změnit hodnotu majetku města, ale pokud by neexistoval v registru, byl by generován beze změny toho, co již existuje.
Můžeme udělat něco zvláštního MongoDB a to nelze provést v relačním enginu, a je to možnost přidejte pole do našich dokumentůDíky tomu můžeme v rámci vlastnosti přidávat seznamy hodnot, abychom mohli generovat stále složitější a úplnější dokumenty pro naše potřeby, a to vše bez nutnosti ovlivňovat obecnou strukturu dalších dokumentů, které existují společně ve stejné kolekci.
Toto je poslední operace, mazání je velmi jednoduché, téměř stejně nebo více než přidávání nebo aktualizace, jednoduše hledáme filtr kritérií nebo mazání, načteme jej do pole a spustíme metodu odstranit ().
Jediné, co musíme mít na paměti, je to MongoDB odstraní všechny dokumenty, které odpovídají tomuto kritériu, a proto pokud chceme odstranit pouze jeden, musíme použít vlastnost jen jeden a vložte jej dovnitř Skutečný. Podívejme se pod kód pro odstranění dokumentu:

S tímto dokončujeme tento tutoriál, viděli jsme základním, ale funkčním způsobem, jak můžeme zahrnout a CRUD na nerelační struktuře jako MongoDB z PHP. Pokud to zvládneme, budeme vytvářet vysoce výkonné a velmi flexibilní aplikace, které nám pomohou udělat dojem na naše uživatele.Líbil se vám tento návod a pomohl mu?Autora můžete odměnit stisknutím tohoto tlačítka, čímž mu dáte kladný bod

Vám pomůže rozvoji místa, sdílet stránku s přáteli

wave wave wave wave wave