最新下载
热门教程
- 1
 - 2
 - 3
 - 4
 - 5
 - 6
 - 7
 - 8
 - 9
 - 10
 
yii2框架 操作 mongodb 数据库实例教程
时间:2022-06-25 00:48:43 编辑:袖梨 来源:一聚教程网
一:安装yii2  关于安装yii2我们就不??铝耍?故抢??omposer安装下载,我们可以安装basic
模版
composer global require "fxp/composer-asset-plugin:~1.0.3"
 composer create-project --prefer-dist yiisoft/yii2-app-basic basic
或者是advanced
composer global require "fxp/composer-asset-plugin:~1.0.3"
 composer create-project --prefer-dist yiisoft/yii2-app-advanced yii-application
安装过程需要输入github密钥,按照提示操作即可
二:yii2 soft 自带mongodb,安装追加composer
composer require --prefer-dist yiisoft/yii2-mongodb
/vendor/yiisoft/yii2-mongodb引入了mongodb
三:使用方法crud
config/web.php
'mongodb' => [
'class' => 'yiimongodbConnection',
'dsn' => 'mongodb://tank:[email protected]:27017/admin',
],
use yiimongodbQuery;
 
public function actionIndex()
{
 
$query = new Query;
// compose the query
$query->select(['_id', 'sex'])
->from('admin')
->limit(10);
// execute the query
$rows = $query->all();
 
print_r($rows);
 
// return $this->render('index');
}
Yii框架中使用mongodb扩展
前提条件:安装了mongodb数据库
              安装了mongo的php驱动
下载Yii的mongo扩展:
这是YiiMongoDbSuite的1.3.6版本
支持PHP Mongo驱动的版本为1.0.5及以下
下载链接:http://pan.ba***idu.com/s/1jGuWP1O
其它版本下载链接:https://github.com/canni/YiiMongoDbSuite
得到文件:YiiMongoDbSuite.tar.gz
解包,并将该文件放至应用的/protected/extensions文件夹下面
确保文件夹名称为:YiiMongoDbSuite
配置应用
vi /protected/config/main.php
 'import' => array(  
      ...  
      'ext.YiiMongoDbSuite.*',    // 插件根目录文件  
    ), 
    'components' => array(  
      ...  
      'mongodb' => array(  
        'class'            => 'EMongoDB', //主文件  
        'connectionString' => 'mongodb://127.0.0.1:27017', //服务器地址 
        'dbName'           => 'myDatabaseName',//数据库名称  
        'fsyncFlag'        => true, //mongodb的确保所有写入到数据库的安全存储到磁盘  
        'safeFlag'         => true, //mongodb的等待检索的所有写操作的状态,并检查  
        'useCursor'        => false, //设置为true,将启用游标  
      ),  
    ),
这样就配置好了,当然,请确保你的mongodb安装在本地,并且端口号是27107上面的配置才能连接得上。
下面测试一下Model:
将以下代码放至/protected/models/User.php里
class User extends EMongoDocument
{
  public $login;
  public $name;
  public $pass;
  // This has to be defined in every model, this is same as with standard Yii ActiveRecord
  public static function model($className=__CLASS__)
  {
    return parent::model($className);
  }
  // This method is required!
  public function getCollectionName()
  {
    return 'users';
  }
  public function rules()
  {
    return array(
      array('login, pass', 'required'),
      array('login, pass', 'length', 'max' => 20),
      array('name', 'length', 'max' => 255),
    );
  }
  public function attributeLabels()
  {
    return array(
      'login'  => 'User Login',
      'name'   => 'Full name',
      'pass'   => 'Password',
    );
  }
}
在控制器里测试一下
$users = User::model()->findAll();
var_dump($users);
如果没有报错,那说明可以正常使用了。
相关文章
- 王者荣耀西施奖励网站在哪进 西施奖励最新网页在线入口 11-04
 - 超自然行动组可用的兑换码有哪些 2025最新有效兑换码领取 11-04
 - 超自然行动组官网入口是什么 超自然官网网页在线充值入口 11-04
 - 我的世界物品怎么一键丢弃 mc快捷键使用指南 11-04
 - 我的世界聊天栏怎么打开 mc聊天快捷操作说明 11-04
 - 我的世界创造模式快捷栏怎么保存 mc物品栏管理技巧 11-04