如何动态查询沙发数据库

时间:2017-09-07 06:15:45

标签: php couchdb cloudant

我正在使用php-on-couch库从couchdb中检索数据 我想根据where条件检索。我希望根据登录用户的数据。我的代码下面检索一个名为accounts的视图但我想要检索而不在couchdb上创建视图。任何帮助都非常感谢

try {
    $doc = $client->asArray()->getView('accounts', 'accounts');
} catch (Exception $e) {
    if ($e->code() == 404) {
        echo "View not found\n";
    } else {
        echo "Error: " . $e->getMessage() . " (errcode=" . $e->getCode() . ")\n";
    }
    exit(1);
}
print_r($doc);

有没有更好的方法来动态创建像mysql一样的检索视图?

1 个答案:

答案 0 :(得分:1)

使用php-on-couch您可以执行此操作

try {

    $opts = array("include_docs" => true, "key" => "your user name");
    $doc = $client->setQueryParameters($opts)->getView("accounts", "accounts");

} catch (Exception $e) {
    if ($e->code() == 404) {
        echo "Account not found\n";
    } else {
        echo "Error: " . $e->getMessage() . " (errcode=" . $e->getCode() . ")\n";
    }
    exit(1);
}
print_r($doc);

确保在帐户视图中将用户名作为密钥发出。 Couch db将搜索视图中的所有帐户,并为您提供包含您的用户名的文档。

emit(doc.username, doc);

希望在php中使用couchdb帮助你们其他人