您的位置:首页 > 编程语言 > PHP开发

yii2 在yii里面使用php 的mongo函数

2014-09-24 17:58 363 查看
yii2中对mongodb的使用是继承的,如果想使用php的mongodb函数,那么:

$mongo = Yii::$app->mongodb;
$mongo->open();
$dsn = $mongo->dsn;
$dsnrev = strrev($dsn);
$databasename = strrev(substr($dsnrev,0,strpos($dsnrev,"/")));
$mongoClient = $mongo->mongoClient;
$collection = $mongoClient->$databasename->customer;

$cursor = $collection->find();
// 迭代显示文档标题
foreach ($cursor as $row) {
echo "name:".$row['name']."<br/>";
echo "_id:".$row['_id']."<br/>";
echo "status:".$row['status']."<br/>";
}

exit;

当然,可以在yii\mongodb\Connection.php中加入函数:

public function mClient(){

$mongo = Yii::$app->mongodb;
$mongo->open();
$dsn = $mongo->dsn;
$dsnrev = strrev($dsn);
$databasename = strrev(substr($dsnrev,0,strpos($dsnrev,"/")));
$mongoClient = $mongo->mongoClient;
$collection = $mongoClient->$databasename;

return $collection;

}

然后就可以这样调用了:$mongoClient = Yii::$app->mongodb->mClient();
$collection = $mongoClient->customer;

$cursor = $collection->find();
// 迭代显示文档标题
foreach ($cursor as $row) {
echo "name:".$row['name']."<br/>";
echo "_id:".$row['_id']."<br/>";
echo "status:".$row['status']."<br/>";
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: