Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
HTMLEncode(URLEncode(string))是否始终=URLEncode(HTMLEncode(string))?_Html_Url_Urlencode_Encode_Html Encode - Fatal编程技术网

HTMLEncode(URLEncode(string))是否始终=URLEncode(HTMLEncode(string))?

HTMLEncode(URLEncode(string))是否始终=URLEncode(HTMLEncode(string))?,html,url,urlencode,encode,html-encode,Html,Url,Urlencode,Encode,Html Encode,我不确定是否有必要对一个字符串进行URL编码和HTML编码(也许,除非您正在构建一个HTML文件,其中包含使用从数据库中提取的数据或用户提供的数据构建的超链接),但在任何情况下,我想知道无论操作顺序如何,结果是否相同。否如果原始字符串包含HTMLEncode将编码的任何内容,则顺序很重要。以字符串“&”为例: HTMLEncode("&") -> & URLEncode("&") -> %26 URLEncode(HTMLEncode("&")

我不确定是否有必要对一个字符串进行URL编码和HTML编码(也许,除非您正在构建一个HTML文件,其中包含使用从数据库中提取的数据或用户提供的数据构建的超链接),但在任何情况下,我想知道无论操作顺序如何,结果是否相同。

否如果原始字符串包含HTMLEncode将编码的任何内容,则顺序很重要。以字符串“&”为例:

HTMLEncode("&") -> &
URLEncode("&") -> %26
URLEncode(HTMLEncode("&")) -> %26amp%3B
HTMLEncode(URLEncode("&")) -> %26

我建议URL编码需要编码的URL的各个部分,然后在设置属性值之前对整个URL进行HTML编码。这应该会产生一个适合HTML的值。

如果您指的是像JavaScript的encodeURI函数一样的URLEncode,那么顺序就不重要了


如果您指的是像JavaScript的encodeUri组件一样的URLEncode,那么是的,顺序确实很重要。 对符号(&)进行编码的小示例

url+html:%26amp%3B


html+url:%26

编写一些单元测试的完美问题:)