我正在使用codeigniter和mongodb数据库创建应用程序。由于codeigniter不包含mongodbs驱动程序,我使用内置库连接mongodb。我使用这个link来创建mongodb configration文件和Mongo_db库。 配置文件就像application \ config \ mongodb:
<?php
$config['default']['mongo_hostbase'] = 'localhost:27017';
$config['default']['mongo_database'] = 'test';
$config['default']['mongo_username'] = '';
$config['default']['mongo_password'] = '';
$config['default']['mongo_persist'] = FALSE;
$config['default']['mongo_persist_key'] = 'ci_persist';
$config['default']['mongo_replica_set'] = FALSE;
$config['default']['mongo_query_safety'] = 'safe';
$config['default']['mongo_suppress_connect_error'] = FALSE;
$config['default']['mongo_host_db_flag'] = FALSE;
?>
和Mongo_db库就像:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Mongo_db
{
public function __construct()
{
//Check mongodb is installed in your server otherwise display an error
if ( ! class_exists('Mongo'))
{
$this->_show_error('The MongoDB PECL extension has not been installed or enabled', 500);
}
//get instance of CI class
if (function_exists('get_instance'))
{
$this->_ci = get_instance();
}
else
{
$this->_ci = NULL;
}
//load the config file which we have created in 'config' directory
$this->_ci->load->config('mongodb');
$config='default';
// Fetch Mongo server and database configuration from config file which we have created in 'config' directory
$config_data = $this->_ci->config->item($config);
try{
//connect to the mongodb server
$this->mb = new Mongo('mongodb://'.$config_data['mongo_hostbase']);
//select the mongodb database
$this->db=$this->mb->selectDB($config_data['mongo_database']);
}
catch (MongoConnectionException $exception)
{
//if mongodb is not connect, then display the error
show_error('Unable to connect to Database', 500);
}
}
?>
当我运行应用程序时,它会给我一个错误 遇到了错误 您的application / config / mongodb.php文件似乎不包含有效的配置数组。
任何人都可以告诉如何解决此错误并设置与mongodb的连接?
答案 0 :(得分:2)
你可能想试试这个回购:https://github.com/vesparny/cimongo-codeigniter-mongodb-library,看起来很容易使用。
可在此处找到完整的PHP库列表: http://docs.mongodb.org/ecosystem/drivers/php-libraries/
答案 1 :(得分:0)
如果您想在codeIgniter项目中使用mongoDB作为数据库,那么这篇文章可能对您有所帮助。 在项目中配置mongoDB有一些简单的步骤。
为此,您可以从官方PHP网站获取帮助 - http://php.net/manual/en/install.pecl.php
您必须下载一个有助于与mongoDB enter link description here
建立连接的库您必须在系统中安装mongoDB数据库。根据您的opearting系统从https://docs.mongodb.com/manual/installation下载可安装文件并安装。
提取库,您将获得一个配置文件,您需要将其放在application / config文件夹中,并将一个库文件放在application / libraries文件夹中。在mongoDB配置文件中输入您的凭据,如
$config['mongo_db']['default']['no_auth'] = FALSE;
$config['mongo_db']['default']['hostname'] = 'localhost';
$config['mongo_db']['default']['port'] = '27017';
$config['mongo_db']['default']['username'] = 'aniket';
$config['mongo_db']['default']['password'] = 'password';
$config['mongo_db']['default']['database'] = 'admin';
$config['mongo_db']['default']['db_debug'] = TRUE;
$config['mongo_db']['default']['return_as'] = 'array';
$config['mongo_db']['default']['write_concerns'] = (int)1;
$config['mongo_db']['default']['journal'] = TRUE;
$config['mongo_db']['default']['read_preference'] = NULL;
$config['mongo_db']['default']['read_preference_tags'] = NULL;
作为一个普通的库,只要你想在项目中使用mongoDB,你就需要加载mongoDB库。为此,您可以使用此代码。
$这 - &GT;负载&GT;库( 'mongo_db',阵列( '激活'=&GT; 'NEWDB'), 'mongo_db_conn');
答案 2 :(得分:-1)
有关使用codeigniter配置mongodb的简单和几分钟解决方案,请参阅此YouTube视频。