weixin_46193778
zeros:)
采纳率50%
2021-03-09 18:28

php 函数参数前面加命名空间名称 是什么写法

已采纳
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
class IndexController implements RequestHandlerInterface
{
    public function handle(ServerRequestInterface $request): ResponseInterface
    {
        $route = $request->getUri()->getPath();

        if (Str::startsWith($route, '/admin')) {
            $file = 'admin.html';
        } else {
            $isMobile = $this->isMobile($request->getServerParams());
            $file = $isMobile ? 'index.html' : 'pc.html';

            if (Arr::has($request->getQueryParams(), 'from')) {
                $file = 'index.html';
            }

            if (!$isMobile && Str::startsWith($route, '/pages')) {
                $file = Str::replaceFirst("/pages", "/pc-pages", $route) . "/index.html";
            }
        }

        return DiscuzResponseFactory::FileResponse(
            public_path($file)
        );
    }
}

handle这个函数, 参数$request前面加了一串ServerRequestInterface是什么作用? 返回又定义了:ResponseInterface又有什么用。 是新语法吗

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

1条回答

  • qq_37524684 子幽 1月前

    php7的语法

    点赞 评论 复制链接分享