$requestParams = [ 'aame_uuid' => 'aba627', 'currency' => 'TEST'];
ksort($requestParams);
$hashString = http_build_query($requestParams);
var_dump( $hashString);
提供
string(30)“aame_uuid =aba627¤cy= TEST”
那么为什么货币转换为¤cy,如何纠正呢?
答案 0 :(得分:4)
我认为问题是& curreh html代码。 http://character-code.com/currency-html-codes.php& curren被替换为此char。
也许您应该添加像&
这样的特定分隔符
到http_build_query以确保它将替换为foo.php?aaaa_uid=aba627&currency=Test
答案 1 :(得分:0)
我刚刚测试了你的代码,我得到了以下字符串:
C:\wamp64\www\test\test.php:8:string 'aame_uuid=aba627¤cy=TEST' (length=30)
对我来说似乎工作正常。你尝试过使用其他密钥吗?如果它给出了相同的结果,那么您的文件或服务器可能会损坏。
如果不是,则curren这个词可能被预先设定为执行某项操作的功能(这种可能性极小)。您是否将其输入错误(当前是php函数)?