string rawurlencode(string str);
Returns a string in which all non-alphanumeric characters except
-_.have been replaced with a percent (%) sign followed by two hex digits. This is the encoding described in RFC1738 for protecting literal characters from being interpreted as special URL delimiters, and for protecting URL's from being mangled by transmission media with character conversions (like some email systems). For example, if you want to include a password in an ftp url:
Example 1. rawurlencode() example 1
echo '<A HREF="ftp://user:', rawurlencode ('foo @+%/'), '@ftp.my.com/x.txt">';
Example 2. rawurlencode() example 2
echo '<A HREF="http://x.com/department_list_script/', rawurlencode ('sales and marketing/Miami'), '">';
See also rawurldecode().