http_build_query没有给出有效的字符串

时间:2016-09-13 07:48:21

标签: php

    $requestParams = [ 'aame_uuid' => 'aba627', 'currency' => 'TEST'];

   ksort($requestParams);

   $hashString = http_build_query($requestParams);

    var_dump( $hashString); 

提供

  

string(30)“aame_uuid =aba627¤cy= TEST”

那么为什么货币转换为¤cy,如何纠正呢?

2 个答案:

答案 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&currency=TEST' (length=30)

对我来说似乎工作正常。你尝试过使用其他密钥吗?如果它给出了相同的结果,那么您的文件或服务器可能会损坏。

如果不是,则curren这个词可能被预先设定为执行某项操作的功能(这种可能性极小)。您是否将其输入错误(当前是php函数)?