Using namespace in if / else statements

前端 未结 4 630
一个人的身影
一个人的身影 2020-12-09 12:59

I am manipulating the same file to manage two external api classes.

One api class is based on namespaces, the other one is not.

What I would like to do is s

4条回答
  •  孤城傲影
    2020-12-09 13:22

    Another option for API class versioning is to set the classname as a variable conditionally.

    // Get class name
    switch ($api_version) {
      case 'v0':
        // No class namespace
        $class = 'Handler';
        break;
      case 'v1':
        // Namespaced class
        $class = 'API\App\v1\Handler';
        break;
      case 'v2':
        // Namespaced class
        $class = 'API\App\v2\Handler';
       break;
     default:
       throw new Exception('Unknown API version: ' . $api_version);
    }
    // Get class object
    $handler = new $class();
    

提交回复
热议问题