<?php
// +----------------------------------------------------------------------
// | ThinkPHP [ WE CAN DO IT JUST THINK ]
// +----------------------------------------------------------------------
// | Copyright (c) 2006~2019 http://thinkphp.cn All rights reserved.
// +----------------------------------------------------------------------
// | Licensed ( http://www.apache.org/licenses/LICENSE-2.0 )
// +----------------------------------------------------------------------
// | Author: liu21st <liu21st@gmail.com>
// +----------------------------------------------------------------------
declare (strict_types = 1);
namespace think;
use ArrayAccess;
use think\file\UploadedFile;
use think\route\Rule;
/**
* 请求管理类
* @package think
*/
class Request implements ArrayAccess
{
/**
* 兼容PATH_INFO获取
* @var array
*/
protected $pathinfoFetch = ['ORIG_PATH_INFO', 'REDIRECT_PATH_INFO', 'REDIRECT_URL'];
/**
* PATHINFO变量名 用于兼容模式
* @var string
*/
protected $varPathinfo = 's';
/**
* 请求类型
* @var string
*/
protected $varMethod = '_method';
/**
* 表单ajax伪装变量
* @var string
*/
protected $varAjax = '_ajax';
/**
* 表单pjax伪装变量
* @var string
*/
protected $varPjax = '_pjax';
/**
* 域名根
* @var string
*/
protected $rootDomain = '';
/**
* HTTPS代理标识
* @var string
*/
protected $httpsAgentName = '';
/**
* 前端代理服务器IP
* @var array
*/
protected $proxyServerIp = [];
/**
* 前端代理服务器真实IP头
* @var array
*/
protected $proxyServerIpHeader = ['HTTP_X_REAL_IP', 'HTTP_X_FORWARDED_FOR', 'HTTP_CLIENT_IP', 'HTTP_X_CLIENT_IP', 'HTTP_X_CLUSTER_CLIENT_IP'];
/**
* 请求类型
* @var string
*/
protected $method;
/**
* 域名(含协议及端口)
* @var string
*/
protected $domain;
/**
* HOST(含端口)
* @var string
*/
protected $host;
/**
* 子域名
* @var string
*/
protected $subDomain;
/**
* 泛域名
* @var string
*/
protected $panDomain;
/**
* 当前URL地址
* @var string
*/
protected $url;
/**
* 基础URL
* @var string
*/
protected $baseUrl;
/**
* 当前执行的文件
* @var string
*/
protected $baseFile;
/**
* 访问的ROOT地址
* @var string
*/
protected $root;
/**
* pathinfo
* @var string
*/
protected $pathinfo;
/**
* pathinfo(不含后缀)
* @var string
*/
protected $path;
/**
* 当前请求的IP地址
* @var string
*/
protected $realIP;
/**
* 当前控制器名
* @var string
*/
protected $controller;
/**
* 当前操作名
* @var string
*/
protected $action;
/**
* 当前请求参数
* @var array
*/
protected $param = [];
/**
* 当前GET参数
* @var array
*/
protected $get = [];
/**
* 当前POST参数
* @var array
*/
protected $post = [];
/**
* 当前REQUEST参数
* @var array
*/
protected $request = [];
/**
* 当前路由对象
* @var Rule
*/
protected $rule;
/**
* 当前ROUTE参数
* @var array
*/
protected $route = [];
/**
* 中间件传递的参数
* @var array
*/
protected $middleware = [];
/**
* 当前PUT参数
* @var array
*/
protected $put;
/**
* SESSION对象
* @var Session
*/
protected $session;
/**
* COOKIE数据
* @var array
*/
protected $cookie = [];
/**
* ENV对象
* @var Env
*/
protected $env;
/**
* 当前SERVER参数
* @var array
*/
protected $server = [];
/**
* 当前FILE参数
* @var array
*/
protected $file = [];
/**
* 当前HEADER参数
* @var array
*/
protected $header = [];
/**
* 资源类型定义
* @var array
*/
protected $mimeType = [
'xml' => 'application/xml,text/xml,application/x-xml',
'json' => 'application/json,text/x-json,application/jsonrequest,text/json',
'js' => 'text/javascript,application/javascript,application/x-javascript',
'css' => 'text/css',
'rss' => 'application/rss+xml',
'yaml' => 'application/x-yaml,text/yaml',
'atom' => 'application/atom+xml',
'pdf' => 'application/pdf',
'text' => 'text/plain',
'image' => 'image/png,image/jpg,image/jpeg,image/pjpeg,image/gif,image/webp,image/*',
'csv' => 'text/csv',
'html' => 'text/html,application/xhtml+xml,*/*',
];
/**
* 当前请求内容
* @var string
*/
protected $content;
/**
* 全局过滤规则
* @var array
*/
protected $filter;
/**
* php://input内容
* @var string
*/
// php://input
protected $input;
/**
* 请求安全Key
* @var string
*/
protected $secureKey;
/**
* 是否合并Param
* @var bool
*/
protected $mergeParam = false;
/**
* 架构函数
* @access public
*/
public function __construct()
{
// 保存 php://input
$this->input = file_get_contents('php://input');
}
public static function __make(App $app)
{
$request = new static();
if (function_exists('apache_request_headers') && $result = apache_request_headers()) {
$header = $result;
} else {
$header = [];
$server = $_SERVER;
foreach ($server as $key => $val) {
if (0 === strpos($key, 'HTTP_')) {
$key = str_replace('_', '-', strtolower(substr($key, 5)));
$header[$key] = $val;
}
}
if (isset($server['CONTENT_TYPE'])) {
$header['content-type'] = $server['CONTENT_TYPE'];
}
if (isset($server['CONTENT_LENGTH'])) {
$header['content-length'] = $server['CONTENT_LENGTH'];
}
}
$request->header = array_change_key_case($header);
$request->server = $_SERVER;
$request->env = $app->env;
$inputData = $request->getInputData($request->input);
$request->get = $_GET;
$request->post = $_POST ?: $inputData;
$request->put = $inputData;
$request->request = $_REQUEST;
$request->cookie = $_COOKIE;
$request->file = $_FILES ?? [];
return $request;
}
/**
* 设置当前包含协议的域名
* @access public
* @param string $domain 域名
* @return $this
*/
public function setDomain(string $domain)
{
$this->domain = $domain;
return $this;
}
/**
* 获取当前包含协议的域名
* @access public
* @param bool $port 是否需要去除端口号
* @return string
*/
public function domain(bool $port = false): string
{
return $this->scheme() . '://' . $this->host($port);
}
/**
* 获取当前根域名
* @access public
* @return string
*/
public function rootDomain(): string
{
$root = $this->rootDomain;
if (!$root) {
$item = explode('.', $this->host());
$count = count($item);
$root = $count > 1 ? $item[$count - 2] . '.' . $item[$count - 1] : $item[0];
}
return $root;
}
/**
* 设置当前泛域名的值
* @access public
* @param string $domain 域名
* @return $this
*/
没有合适的资源?快使用搜索试试~ 我知道了~
最新版thinkphp校园疫情防控进出登记管理系统源码
共1106个文件
php:501个
js:68个
jpg:30个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 12 浏览量
2022-04-17
20:25:33
上传
评论 3
收藏 3.81MB RAR 举报
温馨提示
thinkphp6.0框架开发,校园疫情防控进出登记管理系统源码,功能齐全,帮助校园疫情防控,当然也可以应用各种场景。 功能包括老师和学生角色权限,大数据图表展示,扫码进出校园,校园行程记录,生成二维码,学生管理,网站管理,学生签到打卡等功能等等。 运行环境 thinkphp6.0 mysql5.7 bootstrap4 本地测试集成环境软件:phpstudy 源码安装方法 可参考thinkphp项目搭建 添加网站根目录/public 添加伪静态 code <IfModule mod_rewrite.c> Options +FollowSymlinks -Multiviews RewriteEngine on RewriteBase / RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php?s=/$1 [QSA,PT,L] </IfModule> 仅供研究学习使用!
资源推荐
资源详情
资源评论
收起资源包目录
最新版thinkphp校园疫情防控进出登记管理系统源码 (1106个子文件)
01ad50e43c869c2399f94764f383da2202f305 1KB
035fa5f908e912cdd4ba118f721e2d27e8f60c 85B
03dc2f3dfa855f3793cdb44093263f64527f10 2KB
0536286f3081c6c0646817037faf5446e3547d 40B
0572bcb62115ca7ac26f6c58247b0e804c235d 893B
058c50324cbb515bc2df251c65635b7741902b 2KB
0641e62cdc3f59e2616902151c62347b9acef2 55B
071c95c51538620878ed759a41c91c3743e014 363B
07ab92389bf6dc53cb73868d24afa97a76448a 955B
09926c8b3cd8c3237647d0160388d18a29382b 367B
0a49a92e3bc44263e666bec731cc95d7dcf73e 172B
0a68c3b64a9a50d778fe6d35cbf49cc122d5e2 55B
0d1d1e6b646b4b0dcad029ead5bab473dbc626 1KB
0d4ac24907b3136d16f6f1f8f0953745a3e220 574B
0e952d037a62812d06be650d3be605d3ef5240 993B
0eb2468af9fd86de756c4cf26e9b90ee63cb26 64B
10e45818789021eff2290163eadde4990b6438 317B
14d385514fb9712970d715099767af853bd353 1KB
153a2f94f5c5aaee2c85679f8c3520508ab3ad 5KB
176d6503509e5c93e5721ecbbc097c1d8a103d 726B
1815a6618c6ef19c78d27840b8995fb2521499 792B
18a9800951114c99173356086b5906b6d2eb4c 102B
18b6fc712b9371604505b95f6c52d5ccbfc7fa 293B
18e55a68383c1cbc687c52a2994d1e8ed83800 29B
1901e8e22e51f7d96c994c1cd6fd5081d4988d 57KB
194194d6437d446098318589c3bc5a7c0ff19e 455B
19c3e2b565c943e2d562014d067bac3bb38aab 789B
1b24b85d1d75afe237dfe651a52c8509d0f386 174B
1bade5223f94f6bd75428e126fc35984498285 8KB
1e4524a680e72a2c80122b08369a6bbcf4803c 3KB
1e5d3197abaadc1e4530744906e77039f5bd38 5KB
1ee6a89fadf0adec23808a3272bb3724a412e5 143B
203ad83c68f6f3bbb944077807a2164dbc9690 772B
20f7bbdade0b41145798e56a22400064f40603 54B
217c4540b292b1b5b8d06509283b425aaa32cb 9KB
22e3d81c6e1b0878e52cfd18bf5bb5138f69f1 25KB
2337f4ed74578326f67dcba0d5f0d10dc8d788 2KB
23547a008752ead4f4023f5333a7e841235abc 444B
248a8daff1b69290d7869ac51f1dc557b09b7a 280B
24eb5f7793a489d8c0c2e3bcf3cbe9322bce1b 235B
24ff9d26657863f36b69824896780b6755ca96 610B
2538c777a87d316690672ea4efb01b95fad1e5 2KB
259a0ef527b6a92d8eb31f4d89cd3bdb369579 425B
2938640eca00be6bfaecc2dcb210e321e2ef63 894B
29d223a2e44b29a52a721ae88d4085c0d274f3 185B
2a5f5064a9401b27b855a3a71cd7751b274284 54B
2a764201f51aae7ada4bfb721e055d88e2dfef 3KB
2b7750086559893f99c57975ddaa407c05a572 15KB
2d8ca1db613c784e1fbcb73bf708775d4bc147 549B
2de4f35bf38852128c2b0ff708c727e9107514 2KB
2efe7eb8744eeb8997ebd1685cfcc370379bd2 2KB
2f3f142f22f291a7989fb8682ac9fb58c29a4d 1KB
2f4d771cfb280aa07c2c46f5ca4cc3971fbf2c 3KB
3093606be2d4e27c2d98d1dbb946a214d9ea14 526B
31440e735024890a88e4af557051e57eec4beb 335B
35346de78fa1976b6772a400a6ef567f3c54af 2KB
367d4e1ec1bfc7b982b486cd2f11177f008346 194B
38f102f5010671bbcd9edacf5ced67d605b06b 2KB
3961ee821296597fd6b25c21fd4392fa593b1b 8KB
39a62c9771c00bd676713be4bb48f3a5cdc443 326B
39fc3446d77a42534292c03756e23844f562f2 4KB
3a242313e8c5c68ba83a1acb25ec838e8ad7a6 455B
3b8f3fb236acb464575ff886069717902cb26f 51KB
3d4003ceb29f723301126c950b1bebd7b1c534 505B
3da50a426abd28245e13712137ec1602a3ed92 474B
3f98371bd3a39ba152e78279ec633b75b4123e 315B
3ff9ed45343edf5f68265fe39d5ec052f2da5e 18KB
408daf20ad0e2efb99d7027f753b8ba538eec4 872B
4133025bf542da0974dbd2c38e345c9edd80fe 194B
41fac513e554dcbcca4461a446280e932567ec 123KB
46419f2ee81f6750146ceed12761c45f4ef6ed 172B
465057ce46ef18f4ba9cd8d910b5686819f519 494B
468056ed35dc4a7d4c2312dc02eabbf7905c42 1KB
46f20a3753de8811f4e4f761a251301779764c 37KB
4798b96dde7ee05b74fbc4a0cb448d714a832c 2KB
47f4f9e9a87ef5aedabc83332b87a625e1ed87 778B
4883f414545d52cf5dbe88296c9f6acd305718 2KB
4a39c401ff71ffcb90d15edb906b8046c7661b 1KB
4b270a84ab8266173d4ffd42ddbd61a4fe7b41 1KB
4b777318e70f6e639aaa62860b1355445da569 3KB
4bb9103bf89c055ce983958c24bcf0b78efb2c 1KB
4c4d2190d6dbabb42a9e6409616e74b391c1a6 241B
4cd104e73d34e43d81bd5480a69075c15f6636 1KB
4cd12902712b07c826a16d7653399c45184a44 714B
4db5c3b8dc417e006cf96210e87c782bd18131 12KB
4e7adfbf6b661286a46314b7115ba547083866 51KB
4fffbd24275f491b8c1d54feca148c8cce82e0 910B
507a41adb537372748ea702f8d957753b19eba 5KB
52076469823cd0ac015bfbae02ee938c5829c1 4KB
5297e8f471c082fb48395c09a1c15753c7c31e 357B
54476f292f417dfa6c0ecd193fdcdf1037229c 10KB
556e88e2abe4becd210e99166be1ad855c5cf5 199B
56afb3d49254c7cdbf5c920454e55e975030df 229B
5736200dd2d087361acf4651000906b605372d 130B
57775bb4cd2c9b8bcb9ab564bde6eeefde1049 2KB
57db6058bee021e378f5be78acac96eab63554 252B
5b5a8add001ed13b136618dd6bcaa850132fee 84B
5ca8244125fc9901d5128fe8a28bf553fde4d2 2KB
5d1139efdfb2a820c3b7ce45dcf7e5bb0e7bb4 130B
5d174c1d982b8d37556d9b979b106602e4c74c 622B
共 1106 条
- 1
- 2
- 3
- 4
- 5
- 6
- 12
资源评论
stbomei
- 粉丝: 44
- 资源: 1180
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功