我从HTTP获得json字符串。内容类型是Content- type : application/json;charset=UTF-8。
然后继续使用以下方法将字符串写入文件。
fwrite($fp, json_encode($post));字符串包含对umlauts的编码,如下所示。
[医]Au_(2,000)u00fcr,r,v.
这应该是。
Au enministerium verh ngte Reisewarnung für Kroatien in Kraft getreten
如何对字符串进行编码以将umlauts写入文件而不是它们的编码?
我试过以下几种方法。
<?php
$string = "Au\u00dfenministerium verh\u00e4ngte Reisewarnung f\u00fcr Kroatien in Kraft getreten.";
$string = utf8_encode($string);
echo $string;此脚本的输出仍然显示编码。
发布于 2020-08-19 15:14:08
这是json_encode函数的默认行为,但是您可以通过指定JSON_UNESCAPED_UNICODE选项来覆盖它。例如:
json_encode("Außenministerium", JSON_UNESCAPED_UNICODE);在您的代码中,您应该这样做:
fwrite($fp, json_encode($post, JSON_UNESCAPED_UNICODE));还请检查可以在文档中使用的其他选项
https://stackoverflow.com/questions/63489978
复制相似问题