Welcome to WebmasterWorld Guest from 220.127.116.11
The difference (as far as I can see) is that if spaces have been encoded as +, you will need urldecode().
rawurldecode("foo%20bar") == "foo bar"
urldecode("foo+bar") == "foo bar"
If in doubt, urldecode() is probably the one to use.
To encode URLs, of course, use rawurlencode() or urlencode() as appropriate.