PHP code example of rayswoole / think-orm

1. Go to this page and download the library: Download rayswoole/think-orm library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

rayswoole / think-orm example snippets


//初始化连接配置
$dbConfig = new \rayswoole\orm\pool\DbPoolConfig();
//设置最小连接数
$dbConfig->withMin(5);
//设置最大连接数
$dbConfig->withMax(20);
//设置定时器执行频率(毫秒),创建最小进程、回收空闲进程
$dbConfig->withIntervalTime(15*1000)
//设置连接可空闲时间
$dbConfig->withIdleTime(10)
//获取连接池对象超时时间, 如果连接池占满在指定时间无法释放新的连接, 将输出Exception, 需要自行捕获
$dbConfig->withTimeout(3.0)

//数据库配置, 参考https://www.kancloud.cn/manual/think-orm/1257999
$dbConfig->withExtraConf('数据库数组结构')

//初始化连接池
\rayswoole\orm\facade\Db::init($dbConfig);

//可设置项
//设置log日志,必须继承Psr\Log\LoggerInterface接口(orm自带)
Db::setLog($Logger);
//设置缓存,用于ORM连贯操作`$Db->cache()`,必须继承Psr\SimpleCache\CacheInterface接口
Db::setCache($Cache);

use rayswoole\orm\facade
// table方法必须指定完整的数据表名
Db::table('think_user')->where('id', 1)->find();
// 如果设置了数据表前缀(prefix)参数的话 也可以使用
Db::name('user')->where('id', 1)->find();

//注意: 非协程环境使用必须主动释放连接(协程环境内会自动释放)
Db::close();

// 模型写法
use rayswoole\orm
class userModel extends Model{
    protected $name = 'test'; //指定数据库,不指定会自动设置为test_model
}
$model = new userModel();
$model->where('id', 1)->find();