使用google翻译时,中文出现乱码.

gyx999 2006-04-24 08:56:26
<?
$ch_str="中文";//分别用了utf8_encode和utf8_decode试过,都不行

if ($dh = @fopen('http://www.google.com/translate_t?'.'text='.($ch_str).'&langpair=zh-CN|en&ie=UTF8&hl=en',"r")) {
while (!feof($dh)) {
$retrievedhtml .= fread($dh,8192);
}

print $retrievedhtml;
?>
死活不行.
到底要如何解决中文的乱码问题呢?
...全文
1440 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
xuzuning 2006-04-25
  • 打赏
  • 举报
回复
echo urlencode(iconv('gbk', utf-8', '中文));
朝阳 2006-04-25
  • 打赏
  • 举报
回复
http://community.csdn.net/Expert/TopicView3.asp?id=4456072

给你资料,研究下吧!
gyx999 2006-04-25
  • 打赏
  • 举报
回复
刚才试了,原来urlencode不会实现那样的功能.
现在问题清楚了.
在google.com中输入'中文',经过post,系统自动转化成'%E4%B8%AD%E6%96%87'
现在的问题是,是否有类似的函数可以做这样的转化
gyx999 2006-04-25
  • 打赏
  • 举报
回复
如果我把$ch_str='%E4%B8%AD%E6%96%87',那么可以. 因为如果我在google.com中输入'中文'搜索,那么它的url变成
http://www.google.com/search?sourceid=navclient-ff&ie=UTF-8&q=%E4%B8%AD%E6%96%87
也就是说'中文'被转化成'%E4%B8%AD%E6%96%87'
我知道可以用urlencode()转化.
但是如果我使用
echo urlencode('中文);
输出 %D6%D0%CE%C4.
不等于'%E4%B8%AD%E6%96%87'
为什么?

gyx999 2006-04-25
  • 打赏
  • 举报
回复
看来一下,还是汉字编码问题.
如何解决你呢
iasky 2006-04-25
  • 打赏
  • 举报
回复
用utf-8

21,887

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧