问题
I have a javascript which sends some specific information to a PHP api . Before to send it performs encodeURI . How can I "decode" it in PHP ? I understand that urldecode/urlencode is different that javascript encode/decodeURI so what can I use ?
回答1:
Unless you've encoded it multiple times (e.g. by explicitly calling the encode method AND inserting the value into a form field which is then submitted) you don't need to do anything - it is transparently converted back to its original form when the request is parsed.
回答2:
Use encodeURIComponent
in Javascript: http://www.w3schools.com/jsref/jsref_encodeuricomponent.asp and urldecode
in PHP: http://php.net/manual/en/function.urldecode.php
回答3:
You can use rawurldecode
function in php, but this function is not UTF-8, then your have to convert to UTF-8 with utf8_decode
like this
echo utf8_decode(rawurldecode('Educa%C3%A7%C3%A3o%20Multim%C3%ADdia'));
来源:https://stackoverflow.com/questions/7146501/how-can-i-javascript-decodeuri-in-php