What is the equivalent of JavaScript's encodeURIcomponent function in PHP?
Try rawurlencode. Or to be more precise:
function encodeURIComponent($str) {
$revert = array('%21'=>'!', '%2A'=>'*', '%27'=>"'", '%28'=>'(', '%29'=>')');
return strtr(rawurlencode($str), $revert);
}
This function works exactly how encodeURIComponent is defined:
encodeURIComponentescapes all characters except the following: alphabetic, decimal digits,-_.!~*'()