首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在PHP"$ _SERVER ['REQUEST_URI']"请求中获取变量的最后一个字?

在PHP中,您可以使用以下方法来获取$ _SERVER['REQUEST_URI']请求中的最后一个字符:

代码语言:php
复制
$request_uri = $_SERVER['REQUEST_URI'];
$last_char = substr($request_uri, -1);

这里,我们使用substr()函数从$request_uri字符串中提取最后一个字符。-1作为第二个参数表示从字符串的末尾开始提取一个字符。

现在,$last_char变量将包含$ _SERVER['REQUEST_URI']请求中的最后一个字符。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

最新版 nginx内置变量 大全

下面是nginx支持所有内置变量: $arg_name 请求参数名,即“?”...; 变量后半部分“name”可以替换成任意请求头字段,如在配置文件需要获取http请求头:“Accept-Language”,那么将“-”替换为下划线,大写字母替换为小写,形如:$http_accept_language...$request_uri 这个变量等于包含一些客户端请求参数原始URI,它无法修改,请查看$uri更改或重写URI,不包含主机名,例如:”/cnphp/test.php?...请求的当前URI(不带请求参数,参数位于$args),可以不同于浏览器传递$request_uri值,它可以通过内部重定向,或者使用index指令进行修改,$uri不包含主机名,”/foo/bar.html.../test1/test2/test.php $request_method        1.0.8        请求方法,比如"GET"、"POST"等; $request_uri

4.5K00
  • nginx常用配置

    当前请求文档根目录或别名 $uri 请求的当前URI(不带请求参数,参数位于$args),可以不同于浏览器传递$request_uri值,它可以通过内部重定向...主机名 $http_name 匹配任意请求头字段; 变量后半部分“name”可以替换成任意请求头字段,如在配置文件需要获取http请求头:...$request_uri 这个变量等于包含一些客户端请求参数原始URI,它无法修改,请查看$uri更改或重写URI,不包含主机名,例如:”/cnphp/test.php?...$request_time 以毫秒分辨率请求处理时间,以秒为单位; 从客户端读取第一个字节之间时间并在最后一个字节发送到客户端后进行日志写入 $status...$request_completion 如果请求成功,值为”OK”,如果请求未完成或者请求不是一个范围请求最后一部分,则为空。

    87512

    Nginx结构原理全解析(15)

    Nginx变量 一.全局变量 $args #请求参数值 $query_string #同 $args $arg_NAME...,否则为空字符串 $uri #请求的当前URI(不带请求参数,参数位于$args),可以不同于浏览器传递$request_uri值,它可以通过内部重定向,或者使用...; 从读取客户端一个字节开始计时 $request_uri #这个变量等于包含一些客户端请求参数原始URI,它无法修改,请查看$uri更改或重写URI,不包含主机名,例如:...,需要注意是:为了避免访问linux系统内核,应将ip地址提前设置在配置文件 $server_name #服务器名 $server_port #服务器端口...#匹配任意请求头字段;变量后半部分NAME可以替换成任意请求头字段,如在配置文件需要获取http请求头:"Accept-Language",$http_accept_language即可 $http_cookie

    36530

    NGINX宏观手记

    变量 内置变量存放在 ngx_http_core_module 模块变量命名方式和apache 服务器变量是一致。...下面是nginx支持所有内置变量 变量名 注释 $arg_name 请求参数名,即“?”...; 变量后半部分“name”可以替换成任意请求头字段,如在配置文件需要获取http请求头:“Accept-Language”,那么将“-”替换为下划线,大写字母替换为小写,形如:$http_accept_language...$request_uri 这个变量等于包含一些客户端请求参数原始URI,它无法修改,请查看$uri更改或重写URI,不包含主机名,例如:”/cnphp/test.php?...服务器时间(LOG Format 格式) (1.3.12, 1.2.7) $uri 请求的当前URI(不带请求参数,参数位于$args),可以不同于浏览器传递$request_uri值,它可以通过内部重定向

    41020

    phpstudy nginx配置_phpstorm配置php环境

    PHP页面的请求将会被nginx交给FastCGI进程监听IP地址及端口,由php-fpm(第三方fastcgi进程管理器)作为动态解析服务器处理,最后将处理结果再返回给nginx。...只要你按照cgi协议去编写程序,就能实现语言解释器与webwerver通信。php-cgi程序。但是webserver每收到一个请求,都会去fork一个cgi进程,请求结束再kill掉这个进程。...最后一个位置(fall back)是特殊,它会发出一个内部 “子请求” 而非直接在文件系统里查找这个文件!!!)...在该项设置了fastcgi_pass相关参数,将用户请求资源发给php-fpm进行解析,这里涉及到nginx FastCGI模块相关配置语法下文会介绍)。...而具体 URI 及参数是在 REQUEST_URI 传递给 FastCGI 和 WordPress 程序,因此不受 URI 变化影响!!!!。

    2.5K20

    NGINX 宏观手记

    变量 内置变量存放在 ngx_http_core_module 模块变量命名方式和apache 服务器变量是一致。...下面是nginx支持所有内置变量变量名 注释 $arg_name 请求参数名,即“?”...$request_completion 如果请求成功,值为”OK”,如果请求未完成或者请求不是一个范围请求最后一部分,则为空。...$request_uri 这个变量等于包含一些客户端请求参数原始URI,它无法修改,请查看$uri更改或重写URI,不包含主机名,例如:”/cnphp/test.php?...服务器时间(LOG Format 格式) (1.3.12, 1.2.7) $uri 请求的当前URI(不带请求参数,参数位于$args),可以不同于浏览器传递$request_uri值,它可以通过内部重定向

    39010

    nginx实操(3)内部变量说明

    下面是2.nginx支持所有内置变量: nginx内置变量 $arg_name 请求参数名,即“?”...; 变量后半部分“name”可以替换成任意请求头字段,如在配置文件需要获取http请求头:“Accept-Language”,那么将“-”替换为下划线,大写字母替换为小写,形如:$http_accept_language...$request_completion 如果请求成功,值为”OK”,如果请求未完成或者请求不是一个范围请求最后一部分,则为空。...$request_uri 这个变量等于包含一些客户端请求参数原始URI,它无法修改,请查看$uri更改或重写URI,不包含主机名,例如:”/cnphp/test.php?...uri 请求的当前URI(不带请求参数,参数位于$args),可以不同于浏览器传递$request_uri值,它可以通过内部重定向,或者使用index指令进行修改,$uri不包含主机名,”/foo

    1.4K10

    nginx rewrite 规则配置

    nginx 预定义变量 预定义变量 意义 arg_PARAMETER GET请求变量名PARAMETER参数值 args GET请求参数,foo=123&bar=blahblah binary_remote_addr...)字段,如果请求主机头不可用或者空,则为处理请求server名称 hostname 机器名使用 gethostname系统调用值 http_HEADER HTTP请求头中内容,HEADER为HTTP...如果请求成功,设为"OK";如果请求未完成或者不是一系列请求最后一部分则设为空 request_method 这个变量是客户端请求动作,GET或POST request_uri 包含一些客户端请求参数原始...bind参数 server_name 服务器名称 server_port 请求到达服务器端口号 server_protocol 请求使用协议,通常是HTTP/1.0或HTTP/1.1 uri 请求的当前...URI(不带请求参数,参数位于$args),不同于浏览器传递$request_uri值,它可以通过内部重定向,或者使用index指令进行修改, /foo/bar.html proxy_add_x_forwarded_for

    3.5K20

    nginx cache玩法

    第一层目录名取fastcgi_cache_key md5最后一个字符,第二层目录名取倒数2-3字符,:fastcgi_cache_key md5为b7f54b2df7773722d382f4809d65029c...一般根据host(域名),host(域名),request_uri(请求路径)等变量组合成fastcgi_cache_key。...最后,该proxy_cache指令激活缓存与父location块URL匹配所有内容(在示例为/)。...基于$request_uri变量请求URI)散列决定了每个请求使用哪个缓存,结果是对给定URI请求总是缓存在同一个缓存。 常见问题(FAQ) 本节回答有关NGINX内容缓存一些常见问题。...如果该文件在缓存是最新,那么NGINX将确认一个字节范围请求,并仅将该项目的指定字节提供给客户端。如果文件没有被缓存,或者文件已经失效,NGINX从原始服务器下载整个文件。

    1.3K50

    2024全网最全面及最新且最为详细网络安全技巧四 之 sql注入以及mysql绕过技巧 (3)———— 作者:LJS

    SQL注入漏洞(php 5.3.6以前版本问题之一,这也就解释了为何在使用PDO时,建议升级到php 5.3.6+,并在DSN字符串中指定charset原因)。...语句发送采用了prepare--execute方式 这次变量转义处理交由mysql server来执行。...php另一个特性,自身在解析请求时候,如果参数名字包含” “、”.”、”[“这几个字符,会将他们转换成下划线。 那么假设我发送是这样一个请求: /t.php?...可在$_SERVER['REQUEST_URI'],user_id和user.id却是两个完全不同参数名,那么切割覆盖后,获取 $_REQUEST['user_id']却是11111。...上述绕过思路是有条件限制,如下: 先需要找到一个注入点 注入点可控变量需要获取自$_REQUEST 变量名字必须包含下划线 好找吗?其实在千疮百孔贷齐乐系统,这些条件很容易满足。

    8110

    【 ES 私房菜】收集 Nginx 访问日志

    在Apache日志收集一文,我们已经设计好了必要日志格式,所以这里只需要将Apache对应日志变量改为Nginx就好了,配置代码如下: # 使用map获取客户端真实IP,这里比Apache方便多了...,否则为空字符串 $uri #请求的当前URI(不带请求参数,参数位于$args),可以不同于浏览器传递$request_uri值,它可以通过内部重定向,或者使用...,单位为秒,精度毫秒; 从读入客户端一个字节开始,直到把最后一个字符发送给客户端后进行日志写入为止。...$request_uri #这个变量等于包含一些客户端请求参数原始URI,它无法修改,请查看$uri更改或重写URI,不包含主机名,例如:"/cnphp/test.php?...#匹配任意请求头字段;变量后半部分NAME可以替换成任意请求头字段,如在配置文件需要获取http请求头:"Accept-Language",$http_accept_language即可 $http_cookie

    2.6K11

    Apache之Rewrite和RewriteRule规则梳理以及http强转https配置总结(完整版)

    /)、士博学习(/var/www/htmp/shibo-study/)等 3) 对于士博博客http请求,全部定向到https博客;对于士博论坛http请求,全部定向到https论坛; 最后,解决方案是在...除了纯文本,还可以包含: -  对Pattern反向引用($N) -  对最后匹配RewriteCond反向引用(%N) -  规则条件测试字符串(%{VARNAME})服务器变量 - ...此时再次进行处理URL已经不是原始URL了,而是经最后一个重写规则处理过URL。 它对应于Perlnext命令或C语言中continue命令。...http://%1%{REQUEST_URI} [R=301,L] 这里,当匹配到1%变量以后,子域名才会在%2(内部原子)抓取到,而我们需要正是这个%1变量。...如果这两个条件同时满足,请求将被重定向到安全服务URI.另外你可用{SERVER_PORT}做同样测试,443是常用安全服务端口  RewriteCond %{REQUEST_URI}

    31.2K51

    PHP path_info,Thinkphp controller not exists indexphp

    * 673行左右 * * * 获取当前请求URLpathinfo信息(含URL后缀) * @access public * @return...)打印$_SERVER['PATH_INFO'] 打印出来值大概为admin/index.php 然后在后续解析,又会把.替换成/ 也就是admin/index/php 对应我们报错app\admin...\controller\index\Php类 分析path_info来源 我们知道,$_SERVER超全局变量是在php自动维护,所以它来源肯定来自以下两个方面之一 php底层 web服务器 经过找一些资料...,我得知了该变量值是来自web服务器,也就是我使用nginx 宝塔安装nginx,会自动维护很多常用配置,比如不同版本php配置、path_info配置等等(有些自己编译安装php没有path_info...\index2\Php 可以证实是该配置影响结果 总结处理 Web服务器该配置影响了程序运行,那么我们如何解决该问题 ① 修改thinkphp底层,把path_info最后index.php替换掉 ②

    1.8K10

    Nginx通过Cookie做灰度就这么简单

    另外附一个nginx内置变量表 $args #请求参数值 query_string #同 args $arg_NAME #GET请求NAME值 $is_args #如果请求中有参数...,否则为空字符串 uri #请求的当前URI(不带请求参数,参数位于args),可以不同于浏览器传递request_uri值,它可以通过内部重定向,或者使用...off,or scgi_pass_request_body off $request_completion #如果请求成功,值为"OK",如果请求未完成或者请求不是一个范围请求最后一部分,则为空 $...#HTTP请求方法,通常为"GET"或"POST" $request_time #处理客户端请求使用时间; 从读取客户端一个字节开始计时 request_uri #这个变量等于包含一些客户端请求参数原始...#客户端请求Header头中cookie变量,前缀" http_NAME #匹配任意请求头字段;变量后半部分NAME可以替换成任意请求头字段,如在配置文件需要获取http

    1.5K10

    nginx+memcached构建页面缓存应用

    一.前言 nginxmemcached_module模块可以直接从memcached服务器读取内容后输出,后续请求不再经过应用程序处理,php-fpm、django,大大提升动态页面的速度。...nginx只负责从memcached服务器读取数据,要往memcached写入数据还得需要后台应用程序来完成,主动将要缓存页面缓存到memcached,可以通过404重定向到后端去处理。...memcachedkey可以通过memcached_key变量来设置,如以$uri。如果命中,那么直接输出内容,没有命中就意味着nginx需要从应用程序请求页面。...通过HTTP请求获取memcached状态数据。 7. 键名空间管理,来部分刷新缓存。 8....key=$request_uri; } location ~ .*\.php?

    71120

    nginx+memcached构建页面缓存应用

    一.前言 nginxmemcached_module模块可以直接从memcached服务器读取内容后输出,后续请求不再经过应用程序处理,php-fpm、django,大大提升动态页面的速度。...nginx只负责从memcached服务器读取数据,要往memcached写入数据还得需要后台应用程序来完成,主动将要缓存页面缓存到memcached,可以通过404重定向到后端去处理。...memcachedkey可以通过memcached_key变量来设置,如以$uri。如果命中,那么直接输出内容,没有命中就意味着nginx需要从应用程序请求页面。...通过HTTP请求获取memcached状态数据。 7. 键名空间管理,来部分刷新缓存。 8....key=$request_uri; } location ~ .*\.php?

    1.1K20
    领券