手写一个laravel(八) Request和路由分发

2020-12-06  本文已影响0人  mafa1993

手写一个laravel(七) 路由实现

  1. 创建Htpp/Request.php
  2. 将当前请求的uri,method存入,并返回静态对象
  3. 在index.php使用Request类

源码见个人git https://github.com/mafa1993/slaravel

<?php
/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2020/11/21 0021
 * Time: 21:12
 */

namespace Slaravel\Http;

class Request
{
    //请求方式
    protected $method;
    //请求参数
    protected $uriPath;

    public static function capture(){
        $request = self::createBase();

        //请求方式
        $request->method = $_SERVER['REQUEST_METHOD'];
        var_dump($_SERVER);

        //请求参数
        $request->uriPath = empty($_SERVER['PATH_INFO'])? $_SERVER['REQUEST_URI']:$_SERVER['PATH_INFO'];

        return $request;
    }


    /**
     * 创建自己的对象
     * @return static
     */
    public static function createBase(){
        //创建自己的静态对象
        return new static();
    }

    /**
     * 获取请求方法
     * @return mixed
     */
    public function getMethod(){
        return $this->method;
    }

    /**
     * 获取uri
     * @return mixed
     */
    public function getUri(){
        return $this->uriPath;
    }
}
上一篇下一篇

猜你喜欢

热点阅读