我在做使用mongodb的項目。所以在這裏我寫了獨立的函數來創建數據庫。這是我的代碼不顯示創建的mongodb
$conn = new \MongoClient('mongodb://example.com:27017', array("connect" => TRUE));
$exist_dbs = $conn->listDBs();
foreach ($exist_dbs["databases"] as $databse) {
if ($databse['name'] == $db_name) {
$is_exist = true;
}
}
if (!$is_exist) {
$db = new \MongoDB($conn, $db_name);
$status = true;
$msg = 'database successfully created';
} else {
$status = false;
$msg = 'database already exist';
}
$conn->close();
但創建數據庫後它沒有顯示。但如果我添加這樣的記錄,
$conn = new \MongoClient('mongodb://example.com:27017', array("connect" => TRUE));
$exist_dbs = $conn->listDBs();
foreach ($exist_dbs["databases"] as $databse) {
if ($databse['name'] == $db_name) {
$is_exist = true;
}
}
if (!$is_exist) {
$db = new \MongoDB($conn, $db_name);
$status = true;
$msg = 'database successfully created';
//new code
$collection = new \MongoCollection($db, 'users');
$obj = array("name" => "Madawa", "age" => "34");
$collection->insert($obj);
} else {
$status = false;
$msg = 'database already exist';
}
$conn->close();
它顯示數據庫。請幫助我的原因是什麼?
Crossphire Development下面的答案是正確的。 – acm
@acm ok謝謝你的反饋,實際上我分別編寫了幾個函數來創建數據庫,刪除數據庫,添加明智的集合。所以認爲後創建數據庫我嘗試將收集添加到該數據庫,所以我如何避免上述問題(數據庫不存在) – user2047701