CRUD -operationer för MongoDB i PHP

Innehållsförteckning
Webbapplikationer fokuserar i allmänhet på fyra grundläggande operationer som de behöver utföra mot sitt uthållighetssystem eller Databaser, dessa operationer anses vara viktiga när de lär sig att utvecklas för denna miljö, hänvisar vi till Skapa, läs, uppdatera och ta bort också känd som SKICK för sin förkortning på engelska.
MongoDB tack till dess förare för PHP, låter oss utföra dessa fyra operationer på ett mycket enkelt sätt, dock som chef för Icke-relationsdatabaser, vi kan inte hamna i felet att behandla alla saker som om vi använder ett relationssystem som t.ex. MySQL eller PostgreSQL.
KravFör att följa denna handledning måste vi ha en version av MongoDB i vår testmiljö, förutom att vi har laddat ner och aktiverat motsvarande drivrutin för PHP, för mer information om hur du uppfyller dessa krav kan du ta en titt på följande handledning.
MongoDB skapades för att vara mycket effektiv i transaktioner och operationer, på detta sätt kan du lösa verkliga problem utan att förlora prestanda. A SKICK kräver inte mycket processorkraft i sig, men när tusentals förfrågningar uppstår hos oss Databas på kort tid är där vi kan se hur MongoDB hjälper oss att behålla prestanda.
Samlingar och dokument är mycket kraftfulla enheter, eftersom vi saknar en definierad struktur kan vi lagra de data vi vill behålla en ren och ordnad bild, dessutom kan vi komma åt data i enkla frågor som i relationsmodeller kan ta mellanliggande frågor till oss. Många tabeller.
De Databaser i MongoDB är kända som samlingar, därför kan vi inte behandla dem som Databaser traditionellt, om inte som en uppsättning dokument som är grupperade under en differentiator med ett namn.
Skapar samlingFör att skapa en samling behöver vi inget speciellt kommando, helt enkelt med samma kommando som vi väljer det om det inte finns, MongoDB Det kommer att ansvara för att skapa en ny med det namn som vi har angett.
Denna enkelhet gör vårt arbete enklare, förutom att minska mängden kod som vi måste placera i våra applikationer. Låt oss se i följande bild en exempelkod som vi kan välja en samling med MongoDB:

Här ser vi hur vi först skapar klassobjektet Mongo (), detta ingår när du installerar motsvarande drivrutin, sedan helt enkelt genom att använda objektet och skriva ett namn på Databas är markerat eller skapat. Vid denna tidpunkt måste vi vara försiktiga, eftersom MongoDB det kommer inte att returnera ett fel om Databas det finns inte, det kommer bara att skapa ett nytt, så vi måste göra en dubbelkontroll av namnen vi skriver.
Slutligen kan vi skapa en samling inuti Databas kallade riktningar, och med detta kommer vi att ha basen för att utföra vår verksamhet SKICK.
För att utföra de andra operationerna i SKICK Vi måste först ha data, det är därför det första vi lär oss är att skapa dokument eller göra inspelningar, som passar bäst för vårt tekniska språk.
Tack till föraren MongoDBVi måste helt enkelt skapa ett arrangemang eller en array med strukturen och nödvändiga data för vår nya post och sedan anropa metoden Föra in () anslutningsmetod. Vi behöver inte ha en definierad struktur eller följa ett mönster för den. Om ett dokument har ett fält och ett annat inte, påverkas inte processen.
Låt oss se i följande bild källkoden som förklarar den ovannämnda processen:

Det finns ett alternativ till metoden Föra in () och är metoden spara (), skillnaden är den spara () om en unik identifierare har angetts och den existerar kommer den befintliga posten att uppdateras med de nya uppgif.webpterna.
I utvecklargemenskapen föreslår de att man arbetar mer med spara () med vad Föra in () att generera kod som kan återanvändas, men beslutet ligger i var och en av dem.
Som standard är infogningsmetoden i MongoDB är asynkron, betyder det att medan Databas du sätter in eller uppdaterar posten PHP den fortsätter sin körning utan att krascha. Resultatet av detta beteende är att programmet körs snabbare, även om databasmotorn inte gör det.
Eftersom detta beteende inte alltid kommer att vara användbart för oss kan vi tvinga det att bete sig synkront genom att skicka parametern säker Detta kommer att orsaka när operationen utförs PHP vänta på svar från MongoDB innan du fortsätter med utförandet av dess instruktioner. Parameterstrukturen säker är följande:
$ collection-> insert ($ address, array ('safe' => true));

Som standard och om vi inte anger något annat, MongoDB genererar automatiskt de primära nycklarna för dokumenten under namnet _id, när du gör en Föra in () synkront sätts nyckeln in och placeras i matrisen vi just infogade.
Så om vi vill veta vad den unika identifieraren är, behöver vi bara konsultera den här egenskapen i matrisen, om vi följer det föregående exemplet är det bara tillräckligt för att göra följande:
$ id = $ collection ['_ id'];

Vi går nu vidare till den andra operationen, som är att läsa informationen som vi har i våra dokument eller Databaser. Här kan vi göra förfrågningar om primärnyckeln direkt eller om någon annan kombination av egenskaper i vårt dokument.
För att göra sökningen använder vi helt enkelt metoden hitta en () och till detta kommer vi att skicka en array med alla element som vi ska filtrera. Låt oss i följande bild se en fråga med en primär nyckel och en annan som använder andra dokumentegenskaper:

Om vi ​​märker här, att söka efter primärnyckel, är det första vi gör att skapa ett objekt av typen MongoId och du är förvånad över värdet av det, det här är nyckeln för att allt ska fungera korrekt. Å andra sidan, när du frågar efter egenskaper är det bara tillräckligt att placera värdet i matrisen utan att behöva skapa objekt.
Standard MongoDB det kommer att returnera det fullständiga dokumentet när det har hittat en matchning, så om vi inte vill ha mer än en eller några få data från det måste vi ange det i en andra parameter som är en uppsättning av egenskaper eller fält som vi vill ha , låt oss se i följande kod hur detta kan göras:
$ result = $ collection-> findone (array ('_id' => $ id), array ('förnamn', 'efternamn'));

När du placerar den föregående koden kommer resultatvariabeln att ha en array som bara innehåller egenskaperna för och efternamn för dokumentet som matchar sökkriterierna.
Vi går nu till den tredje operationen, det här är för att uppdatera ett dokument som redan skapats i vår samling, här måste vi vara försiktiga, för om vi inte placerar rätt formulär kan vi sluta skriva över originaldokumentet istället för att uppdatera eller lägga till en egenskap .
För att undvika förvirring rekommenderas att använda $ set som är en operatör som berättar MongoDB att om parametern existerar kommer den att uppdateras med det skickade värdet, och om den inte existerar kommer den att skapas. Detta gör att vi kan undvika fel i vår applikation och ännu bättre kan vi förse vår applikation med önskad funktionalitet. Låt oss se hur det här fungerar:

FÖRSTORA

Vi har då insett hur vi kan ändra värdet på stadsfastigheten i det här fallet, men om det inte fanns i registret skulle det genereras utan att ändra det som redan finns där.
Det är något speciellt vi kan göra i MongoDB och det kan inte göras i en relationsmotor, och det är möjligheten till lägg till matriser i våra dokumentMed detta kan vi lägga till listor över värden inom en fastighet så att vi kan generera alltmer komplexa och kompletta dokument för våra behov, allt utan att behöva påverka den allmänna strukturen för andra dokument som sameksisterar inom samma samling.
Detta är den sista åtgärden, borttagning är mycket enkelt, nästan lika mycket eller mer än att lägga till eller uppdatera, vi letar helt enkelt efter ett kriterium eller radering, laddar det i en array och kör metoden avlägsna ().
Det enda vi har att tänka på är det MongoDB kommer att ta bort alla dokument som matchar detta kriterium, det är därför som vi bara vill ta bort ett måste vi använda egendomen bara en och placera den i Sann. Låt oss se nedanför koden för att radera ett dokument:

Med detta avslutar vi denna handledning, vi har sett på ett grundläggande men funktionellt sätt hur vi kan inkludera en SKICK på en icke-relationell struktur som MongoDB från PHP. Om vi ​​kan bemästra detta kommer vi att skapa högpresterande och mycket flexibla applikationer som hjälper oss att imponera på våra användare.Gillade du och hjälpte denna handledning?Du kan belöna författaren genom att trycka på den här knappen för att ge honom en positiv poäng

Du kommer att bidra till utvecklingen av webbplatsen, dela sidan med dina vänner

wave wave wave wave wave