I am trying to make an api call using PHP. One of the parameters is currency

My API call goes like

<?php 
$call=".....&currency=USD&......."; 
$response = hash_call("Pay", $call);
?>

But if I print the call, it prints out as

....¤cy=USD&.......

I checked and found out that &curren is for ¤

Edit: I tried urlencode, and htmlentities. While I hope to get &currency in the source, I am getting %26currency , & amp;currency respectively.

I want to encode '&currency', such that the browser does not convert &curren to ¤. Thanks

有帮助吗?

解决方案

PHP isn't converting anything.

The browser is converting &current to ¤t for display purposes. If you want to see what $call is in the browser then you will need to wrap it with htmlentities, but that specifically encodes characters so that the original $call is displayed in the browser.

However, you should not do anything to the string $call before passing it to hash_call.

Remember, there is a big difference between a raw string and what the browser displays.

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top