PHP -anslutning med mongoDB

Innehållsförteckning
De NoSQL -databaser de har tagit stor betydelse de senaste åren. Deras skalbara design och möjligheten att hantera strukturer på ett icke -relaterat sätt gör dem till ett alternativ för de nya utvecklingsformer som pågår i världen.
Det är därför vi måste komma ihåg att det är en verklighet att snart måste vi veta hur vi ska hantera dem som vi nu vet hur vi ska hantera dem. Databaser traditionella språk, för detta kommer vi att behöva ansluta till dem genom traditionella språk, till exempel det allmänt kända PHP.
En av motorerna på NoSQL -databaser mest populära är mongoDB, på grund av dess enkla installation och ett utvecklande community som gör att vi kan lära oss mycket på kort tid med enkla sökningar på Internet.
MongoDB installationDet första vi måste göra är att installera servern mongoDB, med detta får vi motorn av Databas för att kunna hantera våra nya baser NoSQL. Eftersom det är en ny motor har den utformats så att den kan installeras på olika plattformar. Vi ska förklara hur man gör det i två av dagens viktigaste operativsystem Windows Y Linux i din version Ubuntu.
För installation mongoDB i Ubuntu Vi måste följa några enkla steg för att aktivera paketet. När dessa steg är gjort kan vi använda apt-get install normalt, låt oss se.
1- Först måste vi importera den offentliga nyckeln, för detta öppnar vi en ny konsol eller terminal och skriver följande kommando:
sudo apt-key adv --keyserver hkp: / /keyserver.ubuntu.com:80 --recv 7F0CEB10

2- Då måste vi lägga till en listfil till mongoDB, för detta måste vi göra följande:
echo 'deb http: //downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list

3- Nu kan vi äntligen installera tjänsten, för detta kommer vi först att uppdatera våra beroenden och sedan installera paketet:
sudo apt-get uppdatering

När allt har uppdaterats lägger vi kommandot för att utföra installationen och med det kommer vi att ha tjänsten tillgänglig mongoDB i vårt system:
sudo apt-get install -y mongodb-org

Installation i Windows är enklare, vi måste bara se till att vi har det Windows Vista eller något nyare, tyvärr den senaste versionen av mongoDB inte kompatibel med Windows XP.
Därefter besöker vi den officiella mongoDB -webbplatsen och väljer den version som närmast matchar vår operativsystemkonfiguration:

FÖRSTORA

När den körbara filen har laddats ner installerar vi den och sedan utför vi följande steg så att tjänsten kan starta korrekt:
1- Vi måste skapa en datamapp där mongoDB kan lagra dokumentsamlingar för våra databaser, för detta från kommandokonsolen, med administratörsbehörighet, kommer vi att hitta i lämplig katalog och skapa en ny mapp. För detta använder vi följande:
md \ data \ db

2- Efter att ha skapat mappen måste vi starta tjänsten mongoDB vi gör detta när vi kör mongod.exe, sökvägen ska likna följande, beroende på var vi har installerat och versionen av mongoDB som vi har:
C: \ Program Files \ MongoDB 2.6 Standard \ bin \ mongod.exe

Låt oss se i följande bild där vi inser att allt gick bra när konsolen berättar det för oss mongoDB vänta på nya anslutningar:

Eftersom vi framgångsrikt har installerat vår tjänst mongoDB, nu måste vi berätta PHP hur du ska kommunicera med honom, för detta måste vi ladda ner lämplig drivrutin och aktivera den i php.ini som en förlängning.
Till Windows vi kan ladda ner drivrutinen från det officiella förvaret för mongoDB i följande sökväg: s3.amazonaws.com/drivers.mongodb.org/php/index.html där vi kommer att ha flera alternativ måste vi välja det senaste och stabila.
Identifiera tilläggetNär filen har laddats ner packar vi upp och letar efter tillägget som passar vår version av PHP, i mitt fall hur jag kör version 5.4 jag kommer använda php_mongo-1.6.0RC2-5.4-vc9.dll och vi byter namn på det som php_mongo.dll.
Sedan måste vi flytta filen till katalogen för våra tillägg som skulle vara:
C: \ wamp \ bin \ php \ php5.4.12 \ ext

Med den extra tillägget behöver vi bara lägga till i php.ini följande rad: tillägg = php_mongo.dll
Till sist vi startar om vår Apache -server och vi utför phpinfo () För att verifiera att tillägget är aktiverat söker vi med CTRL + F ordet mongo och vi kommer att se informationen om vårt tillägg:

FÖRSTORA

Med denna verifierade kommer vi att vara redo att arbeta med PHP Y mongoDB i vår miljö Windows.
Till Linux det tar ett par extra steg, vi måste installera först Päron, för detta kommer vi att göra följande i konsolen eller terminalen:
sudo apt-get install php5-dev php5-cli php-pear

Sedan fortsätter vi att installera drivrutinen, för att göra detta från konsolen eller terminalen kör vi följande instruktion:
sudo pecl installera mongo

Slutligen måste vi öppna vår php.ini och aktivera tillägget:
förlängning = mongo.so

Med detta kan vi starta om vår server apache och vi kommer att vara redo att börja arbeta med Linux.
Vi har redan gjort tillräckligt med tekniska inställningar för dig mongoDB Y PHP kan kommunicera, men vi måste se lite hur denna motor fungerar Databaser för att få en uppfattning om vad vi kan uppnå med NoSQL.
Samlingar och dokumentFörst och främst måste vi veta att det inte finns några bord men samlingar och du är inte lagrade poster men dokument, detta ger oss friheten att det inte är nödvändigt att följa en styv struktur och att varje dokument kan innehålla all data du behöver.
Ett klassiskt exempel är det författare och deras böcker, i en Databas relationellt måste vi skapa en författares tabell, då måste vi skapa en bokbord och i den senare måste vi ha ett fält där vi associerar författarens unika id eller identifierare med varje bok, det är inget att skriva hem om och det är ganska funktionellt.
Hur fungerar mongoDB?I mongoDB vi kommer helt enkelt att skapa en samling kallade författare och var och en dokumentera kommer att vara en författare, mongoDB är ansvarig för att skapa en unik identifierare automatiskt, men vi kan lägga till en egenskap som hjälper oss att identifiera varje författare på ett korrekt sätt, sedan kan vi skapa inom varje författare en ny fastighet kallade böcker och där kommer vi att lagra alla deras titlar, så om vi vill ha en författare som inte har böcker, konsulterar vi helt enkelt det dokument som inte har böckeregenskapen i samlingen.
Detta visar att det inte finns något etablerat förhållande för författare och böcker, det finns helt enkelt ett dokument som kanske innehåller den delen, faktiskt är den så mångsidig att vi kan skapa en författare som innehåller en egenskap som heter barnböcker och som andra författare inte har, på så sätt behöver vi inte skapa nya relationer eller tabeller, helt enkelt kommer samlingsdokumentet att ha det.
Efter att redan ha täckt de rätta grunderna för allt vi behöver veta innan vi kan ansluta till PHP, låt oss granska vad vi behöver:
  • En server att köra PHP, till exempel Apache.
  • Tjänsten mongoDB installerat och aktiva väntar på anslutningar.
  • Har installerat drivrutinen PHP till mongoDB.
  • En vanlig textredigerare och möjligheten att köra på vår server PHP kod vi skriver.

Det första vi måste göra är att skapa ett objekt i klassen MongoClient, detta borde inte vara problem om vi har installerat drivrutinen korrekt, då med det objektet fastställer vi namnet på vår Databas, i det här fallet sätter vi bibliotek, sedan ställer vi in ​​samlingsnamnet och nu kan vi infoga data, låt oss se källkoden för detta exempel:
 bibliotek; $ samling = $ db-> författare; $ author = array ('autorid' => 1, 'name' => 'Dan Brown'); $ collection-> insert ($ author); $ author = array ('autorid' => 2, 'name' => 'Chuck Palahniuk'); $ collection-> insert ($ author); $ author = array ('autorid' => 3, 'name' => 'Max Brooks'); $ samling-> spara ($ författare); ?> var13 -> 

Vi ser hur var och en av de poster som faktiskt är dokument från vår samling bygger vi dem i form av array i vårt program, då skickar vi bara den matrisen till objektet samling och vi kör metoden Föra in, detta ger oss enkelt sätt att infoga data i vår samling i mongoDB, låt oss se i följande bild hur vi efter att ha kört vår kod på vår server, vår Databas ringa upp bibliotek:

FÖRSTORA

Eftersom vi har sett hur enkelt vi infogar data, kommer vi nu att göra en liten fråga, på detta sätt kommer vi att demonstrera hur dataextraktionen av dokumenten fungerar.
För detta kommer vi att göra de nödvändiga anslutningarna igen som i föregående exempel, men nu ska vi använda metoden hitta en () med föremålet samling, på detta sätt kan vi fråga om någon av dokumentegenskaperna i samlingen, till exempel författare som vi hade skapat, låt oss se koden:
 bibliotek; $ samling = $ db-> författare; $ author = array ('autorid' => 1, 'name' => 'Dan Brown'); $ collection-> insert ($ author); $ author = array ('autorid' => 2, 'name' => 'Chuck Palahniuk'); $ collection-> insert ($ author); $ author = array ('autorid' => 3, 'name' => 'Max Brooks'); $ samling-> spara ($ författare); $ documents = $ collection-> findOne (array ('autorid' => 2)); echo "Frågedata:
"; kastade ut "Mongo Primär nyckel: {$ documents ['_ id']}
"; kastade ut "Författarens namn: {$ documents ['name']} ";?> var13 ->

Slutligen kan vi gå igenom resultaten som om det vore en array och helt enkelt ange indexet för varje egendom som vi behöver skriva ut, dessutom har vi inkluderat egenskapen i exemplet _id så att vi kan visualisera hur mongoDB genererar primärnyckeln eller det unika identifieringsfältet. Låt oss se resultatet i vår webbläsare när vi kör vår kod:

Det finns några verktyg som vi kan använda för att hantera våra webbsidor. Databaser i mongoDB.
En av dem är Genghis, för detta kan vi helt enkelt ladda ner eller klona projektet i vår katalog www eller motsvarande där vi kan lyfta in en sida lokal värd och vi kan se vår installation av mongoDB och dina data, för att avsluta låt oss se hur det här användbara verktyget ser ut:

FÖRSTORA

Med detta har vi avslutat denna handledning, vi har redan en bas för att kunna komma in i världen NoSQL, som är i den nuvarande trenden att hantera stora datainsamlingar, kan många ifrågasätta anslutningen PHP ha alternativ som nod.js, svaret är enkelt, eftersom det finns många system av backend gjorda på detta språk och med denna kunskap kommer vi att kunna återanvända våra livslånga koder medan vi uppdaterar oss till ny teknik.

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

wave wave wave wave wave