今天使用thinkPHP操作MongoDB发现跟用MYSQL有很多不同的地方,在这里特别跟大家分享下.
暂时没用thinkPHP5一直还在用thinkPHP3.2.3觉得挺好用,MongoDB版本2和3均测试通过.
config.php
//连接mongoDB
'DB_TYPE' => 'mongo', // 数据库类型
'DB_HOST' => '127.0.0.1', // 服务器地址
'DB_NAME' => 'local', // 数据库名
'DB_USER' => '', // 用户名
'DB_PWD' => '', // 密码
'DB_PORT' => '27017', // 端口
'DB_CHARSET' => 'utf8', // 数据库编码
'DB_DEBUG' => false, // 数据库调试模式 开启后可以记录SQL日志
IndexController.class.php
<?php
namespace Home\Controller;
use Home\Model\ColModel;
use Think\Controller;
class IndexController extends Controller {
//http://localhost/testmdb/Index
//增
public function index(){
$db = D("Col");
$data['name'] = '张雷帅哥';
$data['reg'] = time();
$returl = $db ->add($data);
var_dump($returl);
}
//http://localhost/testmdb/Index/chaxun/name/张雷帅哥
//查
public function chaxun($name=''){
$db = D("Col");
$returl = $db ->where(array("name"=>$name)) ->select();
var_dump($returl);
}
//http://localhost/testmdb/Index/xiugai/name/张雷帅哥
//改
public function xiugai($name=''){
$db = D("Col");
$data['reg'] = '20170310';
$returl = $db ->where(array("name"=>$name)) ->save($data);
var_dump($returl);
}
//http://localhost/testmdb/Index/shan/id/58c2483e4b1486d073000032
//删
public function shan($id=''){
$db = D("Col");
$returl = $db ->where(array("_id"=>$id)) ->delete();
var_dump($returl);
}
}
ColModel.class.php
<?php
namespace Home\Model;
use Think\Model\MongoModel;
Class ColModel extends MongoModel{
}