首页
学习
活动
专区
工具
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.6K00
  • nginx常用配置

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

    90912

    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的值,它可以通过内部重定向

    41220

    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

    36730

    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的值,它可以通过内部重定向

    39110

    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

    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.6K20

    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.4K50

    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

    【 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.7K11

    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 变量的名字必须包含下划线 好找吗?其实在千疮百孔的贷齐乐系统中,这些条件很容易满足。

    9910

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

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

    31.7K51

    PHP path_info,Thinkphp controller not exists indexphp

    * 673行左右 * * * 获取当前请求URL的pathinfo信息(含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构建页面缓存应用

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

    1.1K20
    领券