Encode the url including hyphen(-) and dot(.) in php

Rajasekar PHP picture Rajasekar PHP · Aug 23, 2012 · Viewed 91.5k times · Source

I need the encoded URL for processing in one of the API, but it requires the full encoded URL. For example, the URL from:

http://test.site-raj.co/999999?lpp=1&px2=IjN

has to become an encoded URL, like:

http%3a%2f%test%site%2draj%2eco%2f999999%3flpp%3d1%26px2%3dIjN

I need every symbol to be encoded, even the dot(.) and hyphen(-) like above.

Answer

Dênis Montone picture Dênis Montone · Aug 23, 2012

Try this. Inside a function maybe if you are using it more than once...

$str = 'http://test.site.co/999999?lpp=1&p---x2=IjN';
$str = urlencode($str);
$str = str_replace('.', '%2E', $str);
$str = str_replace('-', '%2D', $str);
echo $str;