单引号JS encodeuri与PHP rawurlencode
我试图用cURL模拟AJAX在PHP中发出的POST请求 我注意到一件事,为什么PHP将单引号转义为单引号JS encodeuri与PHP rawurlencode,php,rawurl,Php,Rawurl,我试图用cURL模拟AJAX在PHP中发出的POST请求 我注意到一件事,为什么PHP将单引号转义为%27,而JS的encodeuricomponent保持原样 PHP中真的有一个函数与JS函数相同吗?你不会找到一个不编码单引号的PHP函数。原因是PHP更严格地遵守其中包括单引号 RFC 3986保留特殊字符,如,(,)和* URI包括由分隔的组件和子组件 “保留”集中的字符。这些字符称为 “保留”,因为 通用语法,通过每个特定于方案的语法,或通过 URI的解引用算法的特定于实现的语法。 如果U
%27
,而JS的encodeuricomponent保持原样
PHP中真的有一个函数与JS函数相同吗?你不会找到一个不编码单引号的PHP函数。原因是PHP更严格地遵守其中包括单引号
RFC 3986
保留特殊字符,如,(,)和*
URI包括由分隔的组件和子组件“保留”集中的字符。这些字符称为
“保留”,因为
通用语法,通过每个特定于方案的语法,或通过
URI的解引用算法的特定于实现的语法。
如果URI组件的数据与保留的冲突
字符作为分隔符的用途,则冲突数据必须 在形成URI之前编码的百分比 保留=代熟食店/子熟食店 gen delims=“:”/“/”/“?”/“#“/”[“/”]“/”@” sub-delims=“!”/“$”/“&/”/“/”(“/”) /*“/”+“/”,“/”;“/”=” 如果您想匹配php并用js编码单引号,可以使用如下函数
function fixedEncodeURIComponent (str) {
return encodeURIComponent(str).replace(/[!'()*]/g, escape);
}
为什么不需要对其进行编码?它仍然可以与CURL一起使用。您不会找到一个不编码单引号的PHP函数。原因是PHP更严格地遵守其中包括单引号
RFC 3986
保留特殊字符,如,(,)和*
URI包括由分隔的组件和子组件“保留”集中的字符。这些字符称为
“保留”,因为
通用语法,通过每个特定于方案的语法,或通过
URI的解引用算法的特定于实现的语法。
如果URI组件的数据与保留的冲突
字符作为分隔符的用途,则冲突数据必须 在形成URI之前编码的百分比 保留=代熟食店/子熟食店 gen delims=“:”/“/”/“?”/“#“/”[“/”]“/”@” sub-delims=“!”/“$”/“&/”/“/”(“/”) /*“/”+“/”,“/”;“/”=” 如果您想匹配php并用js编码单引号,可以使用如下函数
function fixedEncodeURIComponent (str) {
return encodeURIComponent(str).replace(/[!'()*]/g, escape);
}
为什么不需要对其进行编码?它仍然可以使用CURL。为什么不直接构建一个数组并使用
http\u build\u query()
。为什么不直接构建一个数组并使用http\u build\u query()
。