Page

[URL]JavaScript以及php的url编码方式

717Anson17-07-24


url参数中出现+、空格、=、%、&、#等字符的解决办法,JavaScript对应encodeURI(),php对应urlencode()

JavaScript encodeURI() 函数

JavaScript 全局对象

定义和用法

encodeURI() 函数可把字符串作为 URI 进行编码。

语法

encodeURI(URIstring)
参数描述
URIstring必需。一个字符串,含有 URI 或其他要编码的文本。

返回值

URIstring 的副本,其中的某些字符将被十六进制的转义序列进行替换。

说明

该方法不会对 ASCII 字母和数字进行编码,也不会对这些 ASCII 标点符号进行编码: - _ . ! ~ * ' ( ) 。

该方法的目的是对 URI 进行完整的编码,因此对以下在 URI 中具有特殊含义的 ASCII 标点符号,encodeURI() 函数是不会进行转义的:;/?:@&=+$,#

提示和注释

提示:如果 URI 组件中含有分隔符,比如 ? 和 #,则应当使用 encodeURIComponent() 方法分别对各组件进行编码。





urlencode

(PHP 4, PHP 5, PHP 7)

urlencode — 编码 URL 字符串

说明

string urlencode ( string $str )

此函数便于将字符串编码并将其用于 URL 的请求部分,同时它还便于将变量传递给下一页。

参数

  • str

  • 要编码的字符串。

返回值

返回字符串,此字符串中除了 -_. 之外的所有非字母数字字符都将被替换成百分号(%)后跟两位十六进制数,空格则编码为加号(+)。此编码与 WWW 表单 POST 数据的编码方式是一样的,同时与 application/x-www-form-urlencoded 的媒体类型编码方式一样。由于历史原因,此编码在将空格编码为加号(+)方面与 » RFC3896 编码(参见 rawurlencode())不同。



http://www.w3school.com.cn/jsref/jsref_encodeuri.asp

http://php.net/manual/zh/function.urlencode.php




来自ansion博客 

http://www.tp0.top

2017-07-24 17:01:48