【发布时间】:2012-05-01 16:09:05
【问题描述】:
我使用 Ajax 调用来接收希伯来语的响应。结果来自不同的站点,并采用windows-1255 编码。我的页面是UTF-8。
响应如下所示:
îéãò ìî÷áì áæ÷ äçáøä äéùøàìéú àéï
我找到了这个网站:http://kanjidict.stc.cx/recode.php 使用 windows-1255 到 UTF-8(+标记最后一个复选框),结果是完美的。 问题是我如何在 PHP 上做到这一点?
我所做的一切都会导致垃圾。
$data = 'îéãò ìî÷áì áæ÷ äçáøä äéùøàìéú àéï ';
echo mb_detect_encoding($data);
导致UTF-8(可能真的是UTF-8,因为我的php文件是utf-8)
我确实需要这个结果:
מידע למקבל בזק החברה הישראלית אין
如果我尝试 iconv:
echo iconv("WINDOWS-1255", "UTF-8", "îéãò ìî÷áì áæ÷ äçáøä äéùøàìéú àéï ");
我明白了:
ֳ®ֳ©ֳ£ֳ² ֳ¬ֳ®ֳ·ֳ¡ֳ¬ ֳ¡ֳ¦ֳ· ֳ₪ֳ§ֳ¡ֳ¸ֳ₪ ֳ₪ֳ©ֳ¹ֳ¸ֳ ֳ¬ֳ©ֳ÷ ֳ ֳ©ֳ¯
发生了什么事?我怎样才能得到希伯来语结果?
谢谢!!
【问题讨论】:
-
我很困惑。您使用 Ajax(即来自客户端 JavaScript 的 XMLHTTPRequest)还是 PHP 来获取该页面?能否展示一下您目前使用的 PHP 代码?
-
我使用 jQuery $.get 调用一个 php 页面,该页面又使用 cURL 从另一个使用 windows-1255 编码的页面中获取数据
-
所以 Ajax 部分暂时是无关紧要的。请出示您的
curl代码。 -
converting ajax response from ISO-8859-1 to UTF8 的可能重复项 - Ted,请不要重复问题,而是改进之前的问题。
标签: php ajax character-encoding