dsg24156 2017-07-21 11:25
浏览 228

如何在php(codeigniter框架)中执行mongodb查询

This is my MongoDB query

db.getCollection('fe_report').aggregate([{
    $match: 
    { date: { $gte: ISODate("2017-07-01T00:00:00.000Z"),
            $lte: ISODate("2017-07-19T00:00:00.000Z")} } },
    {
        $group:
        {
            _id :"$employee_id_fk",

            no_of_kms : {$sum: "$no_of_kms"},
            no_of_orders: {$sum: "$no_of_orders"},
            }
    }
   ]
  )

i need to execute this query from PHP

  • 写回答

2条回答 默认 最新

  • dongpo1203 2017-07-21 11:37
    关注
        config/mongo.php
    
        $config['mongo_server'] = null;
        $config['mongo_dbname'] = 'mydb';
        libraries/Mongo.php
    
        class CI_Mongo extends Mongo
        {
            var $db;
    
            function CI_Mongo()
            {   
                // Fetch CodeIgniter instance
                $ci = get_instance();
                // Load Mongo configuration file
                $ci->load->config('mongo');
    
                // Fetch Mongo server and database configuration
                $server = $ci->config->item('mongo_server');
                $dbname = $ci->config->item('mongo_dbname');
    
                // Initialise Mongo
                if ($server)
                {
                    parent::__construct($server);
                }
                else
                {
                    parent::__construct();
                }
                $this->db = $this->$dbname;
            }
        }
        And a sample controller
    
        controllers/posts.php
    
        class Posts extends Controller
        {
            function Posts()
            {
                parent::Controller();
            }
    
            function index()
            {
                $posts = $this->mongo->db->posts->find();
    
                foreach ($posts as $id => $post)
                {
                    var_dump($id);
                    var_dump($post);
                }
            }
    
            function create()
            {
                $post = array('title' => 'Test post');
                $this->mongo->db->posts->insert($post);
                var_dump($post);
            }
        }
    
    try this it work for u
    
    评论

报告相同问题?

悬赏问题

  • ¥15 制裁名单20240508芯片厂商
  • ¥20 易康econgnition精度验证
  • ¥15 线程问题判断多次进入
  • ¥15 msix packaging tool打包问题
  • ¥28 微信小程序开发页面布局没问题,真机调试的时候页面布局就乱了
  • ¥15 python的qt5界面
  • ¥15 无线电能传输系统MATLAB仿真问题
  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
  • ¥30 深度学习,前后端连接