Php 美元服务器变量的编码,如美元服务器[';请求#URI';]

Php 美元服务器变量的编码,如美元服务器[';请求#URI';],php,Php,我需要在$\u服务器上执行一些字符串操作,尤其是$\u服务器['REQUEST\u URI'] PHP如何对这些字符串进行编码?我应该使用mb.*系列函数吗 为了更好地理解我的问题,假设我的Web服务器上有这样一个页面: ããã.php 我需要得到第二个字符: echo mb_substr($_SERVER['REQUEST_URI'],1,1); $\u服务器['REQUEST\u URI']通常不包含需要使用多字节函数的内容,因此我想如果您不倾向于使用请求URI执行不寻常的操作,例如使用

我需要在
$\u服务器上执行一些字符串操作,尤其是
$\u服务器['REQUEST\u URI']

PHP如何对这些字符串进行编码?我应该使用
mb.*
系列函数吗

为了更好地理解我的问题,假设我的Web服务器上有这样一个页面:

ããã.php
我需要得到第二个字符:

echo mb_substr($_SERVER['REQUEST_URI'],1,1);

$\u服务器['REQUEST\u URI']
通常不包含需要使用多字节函数的内容,因此我想如果您不倾向于使用请求URI执行不寻常的操作,例如使用非ASCII字符填充它们(由奇怪的URI重写等引起),您可以安全地使用“正常”PHP字符串操作函数

PHP如何对这些字符串进行编码

PHP不会对字符串执行任何操作,但web浏览器通常会在
请求URI
中显示任何非ASCII字符。(我之所以说“通常”,是因为我看到IE没有这样做。不过,我希望在这种情况下,Apache会做这项工作——但我不完全确定它是否会。你必须尝试一下。)

运行将解码这些字符


相关阅读:

什么字符串操作?什么时候编码?用于什么?@TomalakGeret'kal:尤其是字符串操作,如:
substr
@TomalakGeret'kal:我已经添加了一个示例,您可以展示一个您试图实现的真实示例,包括真实的URL吗?那可能help@yes
ãã.html
不是有效的URL-特殊字符将采用百分比编码。看见