+ -
当前位置:首页 → 问答吧 → 在linux上,PHP命令行出现 iconv.c 如下错误

在linux上,PHP命令行出现 iconv.c 如下错误

时间:2011-09-28

来源:互联网

php: iconv.c:354: tds_iconv_open: Assertion `ret == 0' failed.
在PHP5.3中,不明白这错误,到底是为什么?
脚本文件,在以前运行的很好,可是现在出了问题,百度了很久也没找到原因,运维重新配置了PHP5.2的环境,错误照旧。
说明:文件中需要连接mssql可是phpinfo()中显示mssql已经配置好了,浏览器显示mssql连接成功,但是命令行中总是提示这个错误;连接mysql没有问题。

作者: makai   发布时间: 2011-09-28

执行一下locale,看看输出结果是不是UTF8。
(关于locale的知识请google:linux locale)

可以执行一下:export LC_ALL=zh_CN.UTF8
将当前的终端环境设置为UTF8,并且转换你的PHP文件为UTF8格式(这样发送的数据是UTF8字串,假设您当前的文件编码格式是gb2312):iconv -f utf-8 -t gb2312 test.php >test_utf8.php

试试这样行不。

作者: xiaojia   发布时间: 2011-09-28

回复 xiaojia


    locale出来全是GBK啊。 不过服务器,我不能随便改啊,也没权限。
文件也是GBK的。

作者: makai   发布时间: 2011-09-28

相关阅读 更多