Skip to content

ptpcg/CouchTalk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 

Repository files navigation

CouchTalk

PHP Class for talking to Couch DB

Usage

Settings

$settings = array(
'usr'=>'couch_db_user',
'pwd'=>'couch_db_passwd',
'host'=>'hostname_or_ip',
'port'=>'port',
'protocol'=>'http' //http or https
);

Instantiate

$couch = new CouchTalk($settings);

Methods

DBs

List All DBs
$couch->lsDBs();


Create New DB
$couch->mkDB("db_name");


Delete DB
$couch->rmDB("db_name");


Set DB
$couch->setDB("db_name");


List All Docs in DB
$couch->lsDB("db_name",true); //true includes docs


List All Changes in DB
$couch->logCatDB("db_name",true); //true includes docs

Docs

Create Doc
$doc = array(
"name"=>"App Name",
"lang"=>"English",
"mods"=>array(1,2,3,4,5),
"stat"=>1
);
$couch->mkDoc("doc_name",$doc);


Get Doc
$ob->getDoc("doc_name");


Remove Doc
$ob->rmDoc("doc_name");


Update Doc
$upField = "stat";
$upData = 1;
$couch->updateDoc("new_app",null,$upField,$upData);


Overwrite Doc
$upField = "stat";
$upData = 1;
$rev = "revison_string_data";
updateDoc("new_app",$rev,$upField,$upData);


Update Doc (Multiple Fields)
$upFields = array("stat","lang","mods");
$upData = array("stat"=>1,"lang"=>"Deutsche","mods"=>array(1,2,5));
$couch->updateDoc("new_app",null,$upFields,$upData);


Ovewrite Doc (Multiple Fields)
$upFields = array("stat","lang","mods");
$upData = array("stat"=>1,"lang"=>"Deutsche","mods"=>array(1,2,5));
$rev = "revison_string_data";
$couch->updateDoc("new_app",$rev,$upFields,$upData);

ToDo

-Add attachment support
-Add view manipulation support
-Add replication support
-Clean up code

About

PHP Class for talking to Couch DB

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages