当前位置:网站首页 > 创业 > 正文

TP5.0获取请求类和URL基本信息

0 张子豪 张子豪 2025-10-11 11:40 1

TP5.0获取请求类和URL根基信息

东西/原料

  • thinkphp5.0
  • sublime

方式/步调

  1. 1

    1、若何获取请求类

         系统函数:request();

         系统类:

              use think\Request;

              $request = Request::instance();//因为request是单例模式 所以不克不及直接new

         系统节制器类:

              use think\Request;

              public function index(Request $request){

                   dump($request);

              }

  2. 2

    2、获取用户请求信息

         $request = Request::instance();

         // 获取当前域名

         echo 'domain: ' . $request->domain() . '<br/>';

         // 获取当前进口文件

         echo 'file: ' . $request->baseFile() . '<br/>';

         // 获取当前URL地址 不含域名

         echo 'url: ' . $request->url() . '<br/>';

         // 获取包含域名的完整URL地址

         echo 'url with domain: ' . $request->url(true) . '<br/>';

         // 获取当前URL地址 不含QUERY_STRING

         echo 'url without query: ' . $request->baseUrl() . '<br/>';

         // 获取URL拜候的ROOT地址

         echo 'root:' . $request->root() . '<br/>';

         // 获取URL拜候的ROOT地址

         echo 'root with domain: ' . $request->root(true) . '<br/>';

         // 获取URL地址中的PATH_INFO信息

         echo 'pathinfo: ' . $request->pathinfo() . '<br/>';

         // 获取URL地址中的PATH_INFO信息 不含后缀

         echo 'pathinfo: ' . $request->path() . '<br/>';

         // 获取URL地址中的后缀信息

         echo 'ext: ' . $request->ext() . '<br/>';

         伪静态:将路径伪装当作静态页面,让搜刮引擎更好的收录网站,防止别人知道网站真实开辟说话

  3. 3

    3、获取请求模块/节制器/请求方式

         模块:$request->module();

         方式:$request->action();

         节制器:$request->controller();

  4. 4

    4、获取请求相关类型

         请求类型:$request->method();

         请求资本类型:$request->type();

         拜候地址:$request->ip();

         是否是ajax请求:$request->isAjax();

         获取请求参数:$request->param();

                                 $request->only(['name','id']);//只获取特心猿意马字段

                                 $request->except(['name','id']);//剔除取特心猿意马字段

  5. 5

    5、获取变量

         判定是否存在

              $request->has('id','get');

              input('?get.id');

         读取变量

              $request->get('id');

              input('get.id');

              读取所有 input('get.');

                            $request->get();

         可读取数据类型:get、post、put、session、cookie等

  6. 6

    6、变量过滤

         感化:防止恶意输入,防止sql注入

         利用:

              全数数据过滤

                   $request->filter('htmlspecialchars');

                   $request->filter(['htmlspecialchars','strip_tags']);

              针对变量过滤

                   $request->get('name','','htmlspecialchars');

              过滤之后加密

                   $request->get('name','','htmlspecialchars,md5');

  7. 7

    7、变量的解除和获取

         $request->only('name');

         $request->except('name');

  8. 8

    8、变量的润色符

         润色符     感化

            s           强制转换为字符串类型

            d           强制转换为整型类型

            b           强制转换为布尔类型

            a           强制转换为数组类型

            f            强制转换为浮点类型

        input('get.id/d');//强制转换当作整型

        input('get.name/s');//强制转换当作字符串

  9. 9

    9、变量的更改

         地址栏拜候:http://www.tp5.net/index.php/index/index/index?id=10

         $request->get(['id'=>9]

  10. 10

    10、判定请求类型

         // 是否为 GET 请求

         if ($request->isGet()) echo "当前为 GET 请求";

         // 是否为 POST 请求

         if ($request->isPost()) echo "当前为 POST 请求";

         // 是否为 PUT 请求

         if ($request->isPut()) echo "当前为 PUT 请求";

         // 是否为 DELETE 请求

         if ($request->isDelete()) echo "当前为 DELETE 请求";

         // 是否为 Ajax 请求

         if ($request->isAjax()) echo "当前为 Ajax 请求";

         // 是否为 Pjax 请求

         if ($request->isPjax()) echo "当前为 Pjax 请求";

         // 是否为手机拜候

         if ($request->isMobile()) echo "当前为手机拜候";

         // 是否为 HEAD 请求

         if ($request->isHead()) echo "当前为 HEAD 请求";

         // 是否为 Patch 请求

         if ($request->isPatch()) echo "当前为 PATCH 请求";

         // 是否为 OPTIONS 请求

         if ($request->isOptions()) echo "当前为 OPTIONS 请求";

         // 是否为 cli

         if ($request->isCli()) echo "当前为 cli";

         // 是否为 cgi

         if ($request->isCgi()) echo "当前为 cgi";

         request()->isGet();

  11. 11

    11、模拟put、delete请求

           利用:

           <form action=""  method="post" >

                <input type="hidden" name ="_method" value="PUT">

           </form>

           注重:

                表单的请求类型必需是post

                需要设置埋没域传递模拟请求类型

  12. 12

    12、伪静态

           感化:知足更好的搜索引擎优化优化,为了网站的平安

           点窜伪静态:'url_html_suffix'        => 'html'

           获取伪静态后缀:$request->ext();

  13. 13

    13、参数绑心猿意马

           利用:public function bingding($name){

                             echo $name;

                     }

            注重:参数绑心猿意马的个数少于地址栏参数的个数,

                      参数绑心猿意马的名字必需和地址栏的参数名一致,

                      参数绑心猿意马可以设置默认值

注重事项

  • 利用类时,要引用类

来源:百闻(微信/QQ号:9397569),转载请保留出处和链接!


本文链接:https://www.ibaiwen.com/web/222659.html

张子豪

张子豪

TA很懒,啥都没写...

@百闻娱乐 本站部分内容转自互联网,若有侵权等问题请及时与本站联系,我们将在第一时间删除处理。 | 粤ICP备2024343649号 | (地图