使用PHP在Cloudant中进行简单操作
我有一个用AngularJS建造的简单水疗中心。 我现在尝试在Cloudant中托管的CouchDB中使用PHP文件执行两个简单操作:保存文档和获取所有文档 所有使用PHP的CRUD操作的预制示例都非常复杂,使用了多个依赖项,我并没有深入了解它们,因为PHP并不是我真正喜欢的东西 我尝试的最后一个错误是,它在第10行的/../comanda/incoming/test/Cloudant.php中给了我一个使用PHP在Cloudant中进行简单操作,php,angularjs,couchdb,cloudant,Php,Angularjs,Couchdb,Cloudant,我有一个用AngularJS建造的简单水疗中心。 我现在尝试在Cloudant中托管的CouchDB中使用PHP文件执行两个简单操作:保存文档和获取所有文档 所有使用PHP的CRUD操作的预制示例都非常复杂,使用了多个依赖项,我并没有深入了解它们,因为PHP并不是我真正喜欢的东西 我尝试的最后一个错误是,它在第10行的/../comanda/incoming/test/Cloudant.php中给了我一个无法重新声明类Cloudant的错误,我没有设法修复它 不过,我在代码中看到的是他们如何让服
无法重新声明类Cloudant的错误,我没有设法修复它
不过,我在代码中看到的是他们如何让服务器登录,以及一些get/put
看起来是这样的:
class Cloudant {
function __construct($server,$db,$username,$password){
$username = 'user';
$password = 'pass';
$server = 'cloudant.com';
$db = 'dbname';
$this->server = "https://".$username.":".$password.'@'.$username.$server;
$this->db = $db;
$this->header_short = "Content-Type: application/json";
$this->header = $this->header_short."\r\nContent-Length: ";
}
//curl -X PUT {USERNAME}:{PASSWORD}@{USERNAME}.cloudant.com/{DB}{/ID} -d ....
function upsert_doc( $id, $data ){ // to update - include _rev in document body
return $this->call($id, array(
'method' => 'POST',
'header' => $this->header . strlen($data) . "\r\n",
'content' => $data));
}
//curl -X GET {USERNAME}:{PASSWORD}@{USERNAME}.cloudant.com/{DB}/{ID}
function get( $id ){
return $this->call($id, array(
'method' => 'GET',
'header' => $this->header_short
));
}
关于如何简化这个问题,有什么建议吗?我正在考虑使用一个PHP文件来制作身份验证+保存JSON数组,另一个用于身份验证+获取所有文档。错误在于您不能重新声明类“Cloudant”,因为您的项目中还有另一个类-重命名该类应该会有所帮助
对于从PHP与Cloudant的对话,它是一个HTTP接口,因此虽然有库,但对于您提到的一些简单查询,您不一定需要库。我通常使用Guzzle,但您可以使用curl扩展或内置的流处理程序。我构建的示例应用程序中提供了一些使用Guzzle与Cloudant对话的PHP代码示例,这可能有助于提供一些提示: