全局函数

imigo

启动一个协程,自动创建和销毁上下文

  1. imigo(function(){
  2. $value = Redis::get('key');
  3. // 无需手动释放任何资源
  4. });

传入参数:

  1. imigo(function($id, $name){
  2. echo $id, ':', $name, PHP_EOL; // 1:test
  3. }, 1, 'test');

imiCallable

为传入的回调自动创建和销毁上下文,并返回新的回调

  1. $callable = imiCallable(function(){
  2. return 'abc';
  3. });
  4. function test($a)
  5. {
  6. $value = $a(); // abc
  7. }
  8. test($callable);

开新协程去执行回调,无法获取返回值:

  1. $callable = imiCallable(function(){
  2. return 'abc';
  3. }, true); // 这里加了 true
  4. function test($a)
  5. {
  6. $value = $a(); // 协程ID
  7. }
  8. test($callable);

imiGetEnv

getenv() 函数的封装,支持默认值

定义:imiGetEnv($varname = null, $default = null, $localOnly = false);