繁体   English   中英

PHP中的奇怪编码问题

[英]Strange encoding issue in PHP

我一直在墙上撞了几个小时,我仍然无法弄清楚这个问题。 我有一个关联数组,当我尝试用它构建一个查询时,它会在浏览器中显示奇怪的字符。

$reportVars = [
            "__report" => "alpha",
            "start_date" => "2001",
            "end_date" => "2002",
            "dsp_id" => "SPP",
            "current_sp_id" => "SPP_1",
            "sp_name" => "fawzan"

        ];

print_r(http_build_query($reportVars));

这是我在浏览器中获得的输出

__report=alpha&start_date=2001&end_date=2002&dsp_id=SPP¤t_sp_id=SPP_1&sp_name=fawzan

注意SPP后输出中的奇怪字符(¤),在你问No之前,我没有从任何地方复制它。 我只是用我的手打字。

有人可以帮我吗?

&curren正在转换为¤

你现在可能没什么选择了:

  1. current_sp_id移动到顶部,使其成为第一个变量,以便在它之前没有&

  2. 使用&amp作为分隔符,而不是&只使用:

    print_r(http_build_query($reportVars, '', '& amp;'));

(删除&amp之间的空格,添加它,因为它也被转换为&仅在此处)。

根据我的理解,PS php并没有导致这个问题,它是你的浏览器如何通过将它转换为¤本身来处理和货物的

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM