基於swoole的極簡框架-1.4.1

one 1.4.1版本更新:

優化

  • 優化uuid生成規則

修復

  • 緩存驅動爲file時 notice錯誤

增長

  • 容許在模型本身建立查詢構造器鏈式調用
class Article extends Model
{
    CONST TABLE = 'articles';

    public function week()
    {
        return $this->where('create_at', '>', strtotime('-1 week'));
    }

    /**
     * 根據點贊排序
     */
    public function orderByLikeCount()
    {
        return $this->orderBy('like_count', 'desc');
    }

}

// 獲取周排行榜 按照點贊數量
Article::column(['id','title'])->where('create_at', '>', strtotime('-1 week'))->orderBy('like_count', 'desc')->limit(10)->findAll();

// 經過本身建立的查詢構造器
Article::column(['id','title'])->week()->orderByLikeCount()->limit(10)->findAll();
  • 添加rpc 方法 支持數組
// 添加方法`method1`,`method2` 供遠程客戶端調用

RpcServer::add(Abc::class,'method1');
RpcServer::add(Abc::class,'method2');

// 如今能夠這麼寫
RpcServer::add(Abc::class,['method1','method2']);
  • 隊列固定長度
$global_data = new \App\GlobalData\Client();
// 設置隊爲固定長度
$global_data->setQueueLimit(3);
$arr = [1, 2, 3, 4, 5];
foreach ($arr as $i) {
    $global_data->push('abc', $i);
}

while (1) {
    $ret = $global_data->pop('abc');
    if ($ret !== null) {
        echo $ret . PHP_EOL;
    } else {
        break;
    }
}

//以上輸出
//3
//4
//5

//刪除固定長度限制
$global_data->delQueueLimit('abc');

github: https://github.com/lizhichao/one
碼雲: https://gitee.com/vicself/onephp

相關文章
相關標籤/搜索