这将取决于您的目的。如果与其他系统的互 *** 作性很重要,那么rawurlenpre似乎是可行的方法。一个例外是传统系统,该系统希望查询字符串遵循以+而不是%20编码的空格的表单编码样式(在这种情况下,您需要urlenpre)。
rawurlenpre 遵循PHP 5.3.0之前的RFC 1738,之后遵循RFC3986
返回一个字符串,其中除-_。〜外的所有非字母数字字符均已替换为百分号(%),后跟两个十六进制数字。这是»RFC
3986中描述的编码,用于保护文字字符不被解释为特殊的URL分隔符,并防止URL被字符转换的传输介质(例如某些电子邮件系统)所破坏。
请注意RFC 3986与1738。php 5.3之前的rawurlenpre
~根据RFC 1738 编码了波浪号()。但是,从PHP
5.3开始,rawurlenpre遵循RFC 3986,它不需要编码波浪号。
urlenpre
将空格编码为加号(不像
%20rawurlenpre那样)
返回一个字符串,其中所有非字母数字字符(-_除外)。已由百分号(%)替换,后跟两个十六进制数字和空格,并编码为加号(+)。它的编码方式与WWW表单中发布的数据的编码方式相同,即与application/ x-www-form-urlenpred媒体类型中的方式相同。这与»RFC3986编码(请参见rawurlenpre())不同,因为历史原因,空格被编码为加号(+)。
这对应于RFC 1866中 application / x-www-form-urlenpred的定义。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)