免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 7598 | 回复: 24
打印 上一主题 下一主题

[在线等待救援] FreeBSD 7.0(x64) 中 php的 iconv() 失效. [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-03-12 17:28 |只看该作者 |倒序浏览
原本在Linux上开发的php程序移到FreeBSD 7.0 (x64),
发现 iconv() 失效, 我写了个非常简单的a.php去测试
由繁体转为简体, php没有显示有任何错误, 可以执行,
但就只有 “繁” 字能在gb2312编码中显示, “体”则不见了 ….
怎会这样, 请求各位大大指点一下, 谢谢 ~


$a = "繁體";
$b = iconv('big5','gb2312',$a);
echo 'TC: ' . $a .'<br>';
echo 'SC: ' . $b .'<br>';


[ 本帖最后由 kk298 于 2008-3-13 11:24 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2008-03-12 19:38 |只看该作者
用phpinfo()看了一下, iconv()是enabled

iconv support  enabled  
iconv implementation  libiconv  
iconv library version  1.11  

Directive Local Value Master Value
iconv.input_encoding ISO-8859-1 ISO-8859-1
iconv.internal_encoding ISO-8859-1 ISO-8859-1
iconv.output_encoding ISO-8859-1 ISO-8859-1  


我是用port安裝的:
cd /usr/ports/lang/php5 && make install FORCE_PKG_REGISTER="yes" clean
cd /usr/ports/lang/php5-extensions && make install FORCE_PKG_REGISTER="yes" clean


但偏偏就不能轉換, 請求幫助 ~

论坛徽章:
0
3 [报告]
发表于 2008-03-12 19:48 |只看该作者
把gb2132换成gbk

论坛徽章:
0
4 [报告]
发表于 2008-03-12 20:11 |只看该作者
改成gbk亦不行呀 ....

现在情况php能侦测到 iconv() , 故用phpinfo()看到iconv()是 enabled,
但就无法正常进行转换,

用ports安装时, 我没有指定libconv的path的 …

有人在FreeBSD上使用php的iconv()吗?
诚心请求指点, 万分感谢 ~

论坛徽章:
0
5 [报告]
发表于 2008-03-12 20:24 |只看该作者
去FBC搜iconv()
前两天看到过一篇关于这个的提问,具体忘记了.

论坛徽章:
0
6 [报告]
发表于 2008-03-12 20:28 |只看该作者
由于我操作系统是简体的,所以我只能试验$b = iconv('gb2132','big5',$a);,经查,确实无法转换体字,不过换成gbk后,就可以转换体字了.上面我说的话称gbk,你说不行,你试了吗?

论坛徽章:
0
7 [报告]
发表于 2008-03-13 07:51 |只看该作者
原帖由 bestwc 于 2008-3-12 20:24 发表
去FBC搜iconv()
前两天看到过一篇关于这个的提问,具体忘记了.


兄弟, FBC是指freebsdchina.org? 我已在哪裡搜索過, 沒有發現, 能否告知詳細的網圵?

我的即使用gbk,亦不行呀 ....

用var_dump(get_extension_funcs("iconv");看了一下,
卻不知錯在哪裡, 請求各位大大指點 !~

array(11) { [0]=> string(5) "iconv" [1]=> string(16) "ob_iconv_handler" [2]=> string(1 "iconv_get_encoding" [3]=> string(1 "iconv_set_encoding" [4]=> string(12) "iconv_strlen" [5]=> string(12) "iconv_substr" [6]=> string(12) "iconv_strpos" [7]=> string(13) "iconv_strrpos" [8]=> string(17) "iconv_mime_encode" [9]=> string(17) "iconv_mime_decode" [10]=> string(25) "iconv_mime_decode_headers" }  

[ 本帖最后由 kk298 于 2008-3-13 09:05 编辑 ]

论坛徽章:
0
8 [报告]
发表于 2008-03-13 09:51 |只看该作者
换用这个函数试试
  1. mb_convert_encoding
复制代码

论坛徽章:
0
9 [报告]
发表于 2008-03-13 09:55 |只看该作者
试过了:
若果是繁体字 --> GBK , 则直接显示繁体字,
若果是简体字gbk --> big5 , 则无法转换 ...
若果是繁体字 --> gb2312 , 只有繁简相同的字才会显示,只要遇到有一个不相同即后面的不再显示了 ...


总之就是无法转换 ...
即使用mb_convert_encoding()亦是这样 ...

可有人有相同的问题, 请求帮助, 感谢万分 .....

论坛徽章:
0
10 [报告]
发表于 2008-03-13 11:37 |只看该作者
為何沒人伸出援手呀 ....
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP