0
<?php

include('simple_html_dom.php');

$test = file_get_contents('http://translate.google.com/?langpair=en|ja&text=math');
//echo $test;

$URL = "http://translate.google.com/?langpair=en|ja&text=math";
$html = file_get_html($URL);

foreach($html->find('span.short_text') as $e)
echo  $e->innertext;

?>

我正在尝试从谷歌翻译中抓取日文汉字并让亚洲字符正确显示,但我遇到了问题。照原样,此代码打印“Šw。当我取消注释“echo $test”时,它会打印正确的字符,数学(以及之前的一堆其他东西)。我尝试过编码/解码、htmlspecial 字符等。但这些都不起作用。我的第二个问题是,当我从计算机手动写入文本文件并尝试从我的 iPhone 中查看该文本时,它显示得很奇怪,这很奇怪,因为我知道 iPhone 可以很好地读取日文字符。我在chrome上,但知道我在firefox上。

我也可以让它输出字符为:%C3%A6%E2%80%A2%C2%B0%C3%A5%C2%AD%C2%A6

4

2 回答 2

1

您必须更改字符串的编码

mb_convert_encoding ( $str_to_conver , $to_encoding , $from_encoding ] )

将 str 的字符编码从可选的 from_encoding 转换为 to_encoding。

于 2013-03-16T04:19:20.230 回答
0

这为我显示了编码的亚洲字符......

$url = html_entity_decode($string,ENT_COMPAT,"UTF-8");
于 2014-06-04T16:39:42.657 回答