I believe I am missing something apparent here but it's driving me crazy and that i can't decipher it. I am creating a WordPress wordpress plugin and some of it needs to accept WordPress publish title and send that to some Peaceful web service to behave else. So obviously I wish to rawurlencode() the publish title since you never know what text may be inside. However, for whatever reason the output I am getting has extra escape figures and that i have no clue where they're originating from (and it is leading to issues with the net service I am calling clearly).

My code is rather easy:

$topic = get_the_title($post_id);
$curl_post_fields = 'name=' . rawurlencode( $topic );  

Yet after i print the creation of individuals two strings I recieve:

topic=a & b
name=a%20%26%23038%3B%20b

Whereas I'd expect the URL encoded string to become

name=a%20%26%20b

I've no clue where that extra %23038%3B might be originating from. If I am reading through the encoding on that properly it means #038 however i still have no idea where it's originating from.

I'd some issues with that after i made use of a mature php version

There appears to become a html encoding among too, rather than &, & is incorporated in the encoded string. Most likely because &lifier needs to be steered clear of in html, and also the get_title function escapes this using html_special_chars or something like that like this.