Historky z natáčení - CouchDB 3. - PHP knihovny
Neladem a neskladem naházené knihovny a třídy pro zpříjemnění práce s CouchDB z PHP. Je-li tedy někdy názoru, že je to třeba.
Na wiki
CouchDB se pro příklad používá jednoduchá sada tříd z rodinky
CouchSimple – pro začátek rozhodně postačí.
Může to pak vypadat třeba nějak takhle (v Nette)
$options = NEnvironment::getConfig('couchdb');
$resp = $this->couchdb()->send('GET', '/' . $this->couchdb()->db . '/_design/foo/_view/bar?include_docs=true&descending=true');
$doc = json_decode($resp);
$rows = array();
foreach ($doc->rows as $row){
$rows[] = $row->doc;
}
Nějakou dobu jsem takhle vydržel, při připojování k databázi na cloudant.com mě to ale zlobilo, takže jsem zkoušel dál a celkem se zadařilo s českou knihovnou Jakuba Kulhana. Potom to může vypadat zase třeba takhle:
$couchdb = CouchDB::open('fsock://account.cloudant.com');
$db = $couchdb->db('some_database');
$params = array(
'include_docs' =>'true'
);
$items = $db->view('some_design', 'some_view', $params);
if(isset($items->rows)){
foreach (items->rows as $item) {
echo $item->doc->some;
}
}
Komu by stačilo si zjednodušit práci s HTTP, v článku na Couchbase.com se doporučuje HTTP_Request2 a Zend_Http. Současně tam, jistě zkušený, autor podotýká, že zatím nenarazil na PHP knihovnu, kterou by mohl doporučit pro všechny případy a k tomu se přidávám.
před 9 měsíci napsal Peter Láng | | Komentáře: 0
Komentáře
Zatím žádné komentáře.
Přidat komentář
Nahoru ↑