¤ is evil !

I ran into a funny problem last week with a url from the api of a payment gateway that contained …&currencyCode=…..

I adopted an orphaned codebase and am reprogramming it as WordPress plugin and it contains some really weird bugs. The two previous coders that worked on the codebase opted for an iframe solution through an intermediate page.

Problem is SimpleXml recognizing &curren and converting to ¤ (unicode U+000A4) with ¤cycode= as result, if you tried to relocate the page to that url the gateway rejects the url.

str_replace() does not recognize ¤, the solution I found is first running htmlentities() that replaces ¤ with &curren but also converts & to & which the gateway also rejects, so after using htmlentities() you use str_replace() to replace & with &, and then it works fine.

I am open to suggestions on that one, for now, conclusion is that SimpleXML does not handle &curren in a url correctly, you might run into the same problem with &current_user,  &current_time, et cetera.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top
Gea haar kennis omtrent social media & branding is straight to the point en brengt een serieuze meerwaarde. Embrace the future of car care with ceramic coating and witness your vehicle shine like never before !. Creation site internet haute savoie.