我正在尝试使用MicrosoftBingAPI。

$data = file_get_contents("http://api.microsofttranslator.com/V2/Ajax.svc/Speak?appId=APPID&text={$text}&language=ja&format=audio/wav");
$data = stripslashes(trim($data));

返回的数据在返回字符串的第一个字符中有一个“”字符。这不是一个空格,因为我在返回数据之前对它进行了修剪。
“”字符原来是%ef%bb%bf。
我想知道为什么会这样,也许是微软的错误?
如何在PHP中删除%EF%BB%BF?

最佳答案

您可以使用substr只获取其余的而不使用UTF-8 BOM

// if it’s binary UTF-8
$data = substr($data, 3);
// if it’s percent-encoded UTF-8
$data = substr($data, 9);

10-05 21:10
查看更多