×

thinkphpmongoint32

thinkphpmongoint32的简单介绍

admin admin 发表于2023-03-26 06:40:11 浏览61 评论0

抢沙发发表评论

本文目录一览:

thinkphp 用mysqlmongodb 模型怎么使用

第一步:在你的应用的Model文件下建立一个MonModel

第二步:MonModel的内容如下

?php

namespace Admin\Model;

use Think\Model\MongoModel;

Class MonModel extends MongoModel

{

public function __construct($name, $tablePrefix, $connection)

{

parent::__construct($name, $tablePrefix, $connection);

$this-trueTableName=$name;//要连接的那个集合(表)控制器里传过来

}

protected $dbName='name';//(要连接的数据库名称)

protected $connection = array(

'db_type' = 'mongo',

'db_user' = 'admin',//用户名(没有留空)

'db_pwd' = 'admin',//密码(没有留空)

'db_host' = '127.0.0.1',//数据库地址

'db_port' = '27017',//数据库端口 默认27017

);

protected $_idType = self::TYPE_INT; //参考手册

protected $_autoinc = true;//参考手册

/* public function getall()

{

return $this-select();

}*/

}

第三步:你就可以在你的控制器里用这个MonModel去操作mongodb了。

如下

?php

namespace Admin\Controller;

use Admin\Model\MonModel;

use Common\Controller\YouKangController;

class AuController extends YouKangController {

public function index()

{

$M= new MonModel('movie');//movie是集合名(表名)

diedump($M-select());

}

}

MongoDB在ThinkPHP里面怎么进行数据库操作

连接数据库

$conn=new Mongo(“mongodb://sa:123@localhost”); #带用户名密码

选择数据库和集合

$db=$conn-selectDB(“mydb”);

$collection = $db-selectCollection(‘column’);

增删改查这是我的建议,如果想要更加详细的话,可以去后盾人学习相关的知识

thinkphp 怎么样执行Mongo原生语句

原生SQL查询有 query() 和 execute() 两个方法:

query():用于 SQL 查询操作,并返回符合查询条件的数据集

execute():更新和写入数据的 SQL 操作,返回影响的记录数

1

2

3

4

5

6

7

8

9

10

11

12

13

public function read(){

// 实例化一个空模型,没有对应任何数据表

$Dao = M();

//或者使用 $Dao = new Model();

$list = $Dao-query("select * from user where uid5");

if($list){

$this-assign('list', $list );

$this-display();

} else {

$this-error($Dao-getError());

}

}

public function read(){

header("Content-Type:text/html; charset=utf-8");

// 实例化一个空模型,没有对应任何数据表

$Dao = M();

//或者使用 $Dao = new Model();

$num = $Dao-execute("update user set email = '12345@xxx.com' where uid=3");

if($num){

echo '更新 ',$num,' 条记录。';

}else{

echo '无记录更新';

}

}

ThinkPhp框架中使用mongodb数据库配置报错Call to a member function selectCollection() on a non-object

TP3.1的解决方法就是如楼上所说,需要实例化mong数据库的模型。

so 有两种方式:

直接在使用的方法内实例化MongoModel类;

写一个model专门继承MongoModel,把需要连mongo的操作或方法都丢里面去,然后在需要的页面中D()一下这个model中的某一方法即可.

如下图代码: