PHP检查字符串编码后的get请求
我需要复制将PHP检查字符串编码后的get请求,php,urlencode,Php,Urlencode,我需要复制将转换为的方法 我定义了一个常量,用作子类别和父类别之间的分隔符 定义('CATEGORY_separator','')//(常数可能会变化) $sql.=“组名称(c.name顺序按c.level分隔符“.”类别名称分隔符“.”作为名称 一个可能的结果可能是 行=数组( 'name=>category1 category2 ) 然后,类别将显示为链接列表 单击链接时,URL将被编码 地址栏:`www.example.com/categories?name=category1>cat
转换为的方法
我定义了一个常量,用作子类别和父类别之间的分隔符
定义('CATEGORY_separator','')
//(常数可能会变化)
$sql.=“组名称(c.name顺序按c.level分隔符“.”类别名称分隔符“.”作为名称
一个可能的结果可能是
行=数组(
'name=>category1 category2
)
然后,类别将显示为链接列表
单击链接时,URL将被编码
地址栏:`www.example.com/categories?name=category1>category2
我希望能够检查类别分隔符
是否存在于$\u GET['name']
中,以便执行
$name = $_GET['name'];
$categories = explode(CATEGORY_SEPERATOR, $name);
但是当$\u GET['name']
到达我的脚本时,它的甜菜已经转化了
$\u获取['name']
初始值
变量转储:string'category1>category2'(长度=27)
stripslashes()之后(无更改)
变量转储:string'category1>category2'(长度=27)
在htmlspecialchars($data,ENT_COMPAT,'UTF-8')之后;
变量转储:string'category1'category2'(长度=30)
现在,我已经通过执行以下操作来稍微扭转它
$\u GET['name']=htmlspecialchars\u decode($\u GET['name'],ENT\u COMPAT);
if(ini\u get('magic\u quotes\u gpc')){
$\u GET['name']=addcslashes($\u GET['name']);
}
但还是需要从你那里得到它
category1>category2
to
我尝试过使用urldeocde和rawurldecode,但运气不好。逆转用于编码的过程会起作用,但不幸的是,在客户端(浏览器)的某个地方,数据在发送到服务器之前被更改/损坏
这是一个有对应功能的列表
- ->
- ->
- ->
反转用于编码的过程将起作用,但不幸的是,在客户端(浏览器)的某个地方,数据在发送到服务器之前被更改/损坏
这是一个有对应功能的列表
- ->
- ->
- ->
你在抱怨这是一个字符集问题。你的文本已损坏,你需要全部修复-没有100%可靠的方法来检测真正应该是的内容和损坏的字符。请阅读:谢谢,我认为是
的编码版本。感谢链接
是一个不间断的空格。它永远不会显示为
,因为根据定义它是一个空格字符。您正在抱怨
?这是一个字符集问题。您的文本已损坏,您需要修复它-没有100%可靠的方法来检测真正应该是的内容代码>和什么是损坏的字符。阅读以下内容:谢谢,我认为
是
的编码版本。谢谢链接
是一个不间断的空格。它永远不会显示为
,因为根据定义它是一个空格字符。