看到Thinkphp网站上没有调用Mongodb的例子,就写一个一个最简的Thinkphp操作Mongodb的例子。欢迎讨论
【前提】
Thinkphp对Mongdb的支持依赖于PHP对Mongodb的支持。这是前提。如果出现类似“系统不支持:mongoClient”的提示,说明你的PHP还没支持Mongodb。
那么你需要做的就是
1、去https://github.com/mongodb/mongo-php-driver/downloads下载最新的PHP-Mongodb扩展包,下载后把和你PHP大版本相符合的文件重命名为php_mongo.dll
如,我的PHP是5.3.13,win7 64位系统,那么就把
php_mongo-1.3.2RC1-5.3-vc9-x86_64.dll改成php_mongo.dll
2、把改名后的文件复制到php的ext文件夹
3、修改php.ini ,增加 extension=php_mongo.dll
【配置】
修改配置文件如下,即可链接mongodb数据库:<?php <br />
return array(<br>
//'配置项'=>'配置值'<br>
'DB_TYPE' => 'mongo', // 数据库类型<br>
'DB_HOST' => 'localhost', // 服务器地址<br>
'DB_NAME' => 'local', // 数据库名<br>
'DB_USER' => '', // 用户名<br>
'DB_PWD' => '', // 密码<br>
'DB_PORT' => '27017', // 端口<br>
);
【代码】
对于操作mongodb,要使用M方法。
因此要初始化一个类。假设数据库里有数据表user,那么要给user创建一个继承自MongoModel的模型:<?php <br />
namespace Home\Model;<br>
use Think\Model\MongoModel;<br>
Class UserModel extends MongoModel <br>
{ <br>
//可以是空的。<br>
}
修改IndexController如下,即可调用Mongodb中local数据库里的user Collection<?php <br />
namespace Home\Controller;<br>
use Think\Controller;<br>
class IndexController extends Controller {<br>
public function index(){<br>
$Model = D("User");<br>
$Model->create();<br>
$Model->name = '流年2';<br>
$Model->add();<br>
$a = $Model->select();<br>
var_dump($a);<br>
<br>
}<br>
}
AD:真正免费,域名+虚机+企业邮箱=0元