Spojení PHP s mongoDB

Obsah
The Databáze NoSQL v posledních letech nabývají velkého významu. Jejich škálovatelný design a možnost nesouvisejícího řízení struktur z nich dělají alternativu pro nové formy vývoje, které ve světě probíhají.
Proto musíme mít na paměti, že je realitou, že brzy budeme muset vědět, jak s nimi zacházet, jak nyní víme, jak s nimi zacházet. Databáze tradiční jazyky, k tomu se k nim budeme muset připojit prostřednictvím tradičních jazyků, jako jsou široce známé PHP.
Jeden z motorů Databáze NoSQL nejoblíbenější je mongoDB, díky své snadné instalaci a rozvíjející se komunitě, která nám umožňuje mnoho se naučit v krátkém čase pomocí jednoduchého vyhledávání na internetu.
Instalace MongoDBPrvní věc, kterou musíme udělat, je nainstalovat server mongoDB, čímž získáme motor Databáze abychom mohli spravovat naše nové základny NoSQL. Jelikož se jedná o nový motor, byl navržen tak, aby jej bylo možné nainstalovat na různé platformy. Vysvětlíme, jak to udělat ve dvou nejdůležitějších operačních systémech současnosti Okna Y Linux ve vaší verzi Ubuntu.
Pro instalaci mongoDB v Ubuntu Aby bylo možné balíček povolit, musíme provést několik jednoduchých kroků. Jakmile jsou tyto kroky hotové, můžeme použít apt-get install normálně, uvidíme.
1- Nejprve musíme importovat veřejný klíč, za tímto účelem otevřeme novou konzolu nebo terminál a napíšeme následující příkaz:
sudo apt-key adv --keyserver hkp: / /keyserver.ubuntu.com:80 --recv 7F0CEB10

2- Pak musíme přidat soubor seznamu do mongoDBK tomu musíme udělat následující:
echo 'deb http: //downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list

3- Nyní můžeme konečně nainstalovat službu, za tímto účelem nejprve aktualizujeme naše závislosti a poté nainstalujeme balíček:
sudo apt-get update

Jakmile bude vše aktualizováno, vložíme příkaz k instalaci a tím budeme mít službu k dispozici mongoDB v našem systému:
sudo apt-get install -y mongodb-org

Instalace v Okna je jednodušší, jen se musíme ujistit, že máme Windows Vista nebo něco novějšího, protože bohužel nejnovější verze mongoDB není kompatibilní s Windows XP.
Poté navštívíme oficiální web mongoDB a vybereme verzi, která nejvíce odpovídá konfiguraci našeho operačního systému:

ZVĚTŠIT

Jakmile je spustitelný soubor stažen, nainstalujeme jej a poté provedeme následující kroky, aby se služba mohla spustit správně:
1- Musíme vytvořit datovou složku, kde mongoDB můžeme ukládat sbírky dokumentů našich databází, a to z příkazové konzoly, s oprávněním správce, vyhledáme v příslušném adresáři a vytvoříme novou složku. K tomu používáme následující:
md \ data \ db

2- Po vytvoření složky musíme spustit službu mongoDB děláme to při provádění mongod.exe, cesta by měla být podobná následující, v závislosti na tom, kde jsme nainstalovali a verzi mongoDB které máme:
C: \ Program Files \ MongoDB 2.6 Standard \ bin \ mongod.exe

Podívejme se na následujícím obrázku, kde si uvědomíme, že všechno šlo dobře, když nám to konzole řekne mongoDB počkejte na nová připojení:

Protože jsme úspěšně nainstalovali naši službu mongoDB, teď musíme říct PHP jak byste s ním měli komunikovat, za tímto účelem si musíme stáhnout příslušný ovladač a aktivovat jej v php.ini jako rozšíření.
Na Okna můžeme stáhnout ovladač z oficiálního úložiště mongoDB v následující cestě: s3.amazonaws.com/drivers.mongodb.org/php/index.html kde budeme mít několik možností, musíme vybrat tu nejnovější a nejstabilnější.
Identifikujte příponuJakmile je soubor stažen, rozbalíme a hledáme rozšíření, které vyhovuje naší verzi PHP, v mém případě, jak používám verze 5.4 použiji php_mongo-1.6.0RC2-5.4-vc9.dll a přejmenujeme jej na php_mongo.dll.
Poté musíme soubor přesunout do adresáře našich rozšíření, které by bylo:
C: \ wamp \ bin \ php \ php5.4.12 \ ext

S přidaným rozšířením bychom museli přidat pouze v php.ini následující řádek: přípona = php_mongo.dll
Konečně restartujeme náš server Apache a popravíme phpinfo () Abychom ověřili, že je rozšíření povoleno, hledáme pomocí CTRL + F slovo mongo a uvidíme informace o našem rozšíření:

ZVĚTŠIT

S tímto ověřením budeme připraveni pracovat PHP Y mongoDB v našem prostředí Okna.
Na Linux vyžaduje pár kroků navíc, musíme nejprve nainstalovat HruškaZa tímto účelem v konzole nebo terminálu provedeme následující:
sudo apt-get install php5-dev php5-cli php-pear

Poté pokračujeme v instalaci ovladače, k tomu z konzoly nebo terminálu provedeme následující instrukci:
sudo pecl nainstalovat mongo

Nakonec musíme otevřít naše php.ini a aktivujte rozšíření:
rozšíření = mongo.so

S tímto můžeme restartujte náš server apache a budeme připraveni začít pracovat Linux.
Už jsme pro vás provedli dostatek technických nastavení mongoDB Y PHP může komunikovat, ale musíme trochu vidět, jak tento motor funguje Databáze abychom získali představu o tom, čeho můžeme s NoSQL.
Sbírky a dokumentyNejprve musíme vědět, že neexistují žádné tabulky, ale sbírky a nejste uloženi záznamy, ale dokumenty, to nám dává svobodu, že není nutné dodržovat rigidní strukturu a že každý dokument může obsahovat všechna potřebná data.
Klasickým příkladem je autoři a jejich knihy, v Databáze relační musíme vytvořit a tabulka autorů, pak musíme vytvořit a knižní stůl a ve druhém případě musíme mít pole, kde ke každé knize přidružíme jedinečný identifikátor nebo identifikátor autora, není o čem psát domů a je docela funkční.
Jak mongoDB funguje?v mongoDB jednoduše vytvoříme a sbírka zvaní autoři a každý dokument bude autor, mongoDB je zodpovědný za automatické vytváření jedinečného identifikátoru, ale můžeme přidat vlastnost, která nám pomůže identifikovat každého autora řádným způsobem, poté můžeme v rámci každého autora vytvořit nová nemovitost nazvané knihy a tam uložíme všechny jejich názvy, takže pokud chceme autora, který knihy nemá, jednoduše zkonzultujeme dokument, který v rámci sbírky nemá majetek knihy.
To ukazuje, že neexistuje žádný zavedený vztah pro autory a knihy, prostě existuje dokument, který tuto část může, ale nemusí obsahovat, ve skutečnosti je tak univerzální, že můžeme vytvořit autora, který obsahuje vlastnost zvanou dětské knížky a že ostatní autoři nemají, tímto způsobem nebudeme muset vytvářet nové vztahy nebo tabulky, prostě to bude mít sbírkový dokument.
Když jsme již pokryli správné základy všeho, co potřebujeme vědět, než se můžeme spojit PHP, pojďme se podívat, co potřebujeme:
  • Server ke spuštění PHP, například Apache.
  • Služba mongoDB nainstalován a aktivní čekání na spojení.
  • Nainstalovali jste ovladač PHP na mongoDB.
  • Jednoduchý textový editor a možnost spuštění na našem serveru PHP kód, který píšeme.

První věc, kterou musíme udělat, je vytvořit objekt třídy MongoClient„Pokud jsme správně nainstalovali ovladač, neměly by to být problémy, pak s tímto objektem určíme název našeho Databáze, v tomto případě jsme dali knihovna, pak nastavíme název kolekce a nyní můžeme vkládat data, podívejme se na zdrojový kód tohoto příkladu:
 knihovna; $ collection = $ db-> autoři; $ author = array ('autorid' => 1, 'name' => 'Dan Brown'); $ kolekce-> vložte ($ autor); $ author = array ('autorid' => 2, 'name' => 'Chuck Palahniuk'); $ kolekce-> vložte ($ autor); $ author = array ('autorid' => 3, 'name' => 'Max Brooks'); $ kolekce-> uložit ($ autor); ?> var13 -> 

Vidíme, jak každý ze záznamů ve skutečnosti je dokumenty z naší sbírky je stavíme ve formě pole v našem programu pak jen předáme toto pole objektu sbírka a provedeme metodu vložit, to nám snadno dává možnost vkládat data do naší sbírky v mongoDB, podívejme se na následujícím obrázku, jak po spuštění našeho kódu na našem serveru, našem Databáze volání knihovna:

ZVĚTŠIT

Protože jsme viděli, jak snadno vkládáme data, uděláme nyní malý dotaz, a tak předvedeme, jak funguje extrakce dat z dokumentů.
Za tímto účelem vytvoříme potřebná připojení znovu jako v předchozím příkladu, ale nyní použijeme metodu Najdi jednu () s předmětem sbírka, tímto způsobem můžeme dotazovat na jakékoli vlastnosti dokumentu v kolekci, například autor že jsme vytvořili, podívejme se na kód:
 knihovna; $ collection = $ db-> autoři; $ author = pole ('autorid' => 1, 'name' => 'Dan Brown'); $ kolekce-> vložte ($ autor); $ author = array ('autorid' => 2, 'name' => 'Chuck Palahniuk'); $ kolekce-> vložte ($ autor); $ author = pole ('autorid' => 3, 'name' => 'Max Brooks'); $ kolekce-> uložit ($ autor); $ documents = $ collection-> findOne (pole ('autorid' => 2)); echo "Dotazovací údaje:
"; vyhodil "Mongo primární klíč: {$ documents ['_ id']}
"; vyhodil "Jméno autora: {$ documents ['name']} ";?> var13 ->

Nakonec můžeme procházet výsledky, jako by to bylo pole, a jednoduše označit index každé vlastnosti, kterou potřebujeme vytisknout, navíc jsme vlastnost zahrnuli do příkladu _id abychom si mohli představit, jak mongoDB generuje pole primárního klíče nebo jedinečného identifikátoru. Podívejme se na výsledek v našem prohlížeči, když spustíme náš kód:

Existuje několik nástrojů, které můžeme použít ke správě našich webových stránek. Databáze v mongoDB.
Jedním z nich je Čingischán, proto si můžeme projekt jednoduše stáhnout nebo klonovat v našem adresáři www nebo ekvivalent, kde můžeme zvednout stránku localhost a můžeme vidět naši instalaci mongoDB a vaše data, na závěr se podívejme, jak tento užitečný nástroj vypadá:

ZVĚTŠIT

Tím jsme tento tutoriál dokončili, již máme základnu, abychom mohli vstoupit do světa NoSQL, což je v současném trendu správy velkých datových sbírek, mnozí si mohou klást otázku o připojení v PHP mít alternativy jako node.js, odpověď je jednoduchá, protože existuje mnoho systémů backend vyrobené v tomto jazyce a s těmito znalostmi budeme moci znovu použít naše celoživotní kódy, zatímco se aktualizujeme na nové technologie.
wave wave wave wave wave