V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Doubear
V2EX  ›  问与答

[php] 寻求一个高效完美的字符编码自动识别转换方法

  •  
  •   Doubear · Oct 11, 2014 · 3466 views
    This topic created in 4216 days ago, the information mentioned may be changed or developed.
    写小偷程序经常遇到这种坑爹问题
    国内的网站还有很多都是GBK编码的
    对于用惯了UTF8的我来说
    这就是个坑
    抓取的数据采用iconv()+//IGNORE来转换编码都还是会遇到问题,比如转换失败后一堆乱码
    网上查的mb_detect_encoding函数有的环境不支持
    艾玛、、求大神给支个招啊
    弄个完美点的
    拜谢!!!!!
    9 replies    2014-10-11 18:50:21 +08:00
    xiaokai
        1
    xiaokai  
       Oct 11, 2014
    判断这个不就行了? <meta charset="UTF-8" />
    feiyuanqiu
        2
    feiyuanqiu  
       Oct 11, 2014
    @xiaokai 想听下思路...
    vibbow
        3
    vibbow  
       Oct 11, 2014
    @feiyuanqiu 如果网站没有标明meta charset,按GB2312算
    如果标明了,那就按标明的算
    Doubear
        4
    Doubear  
    OP
       Oct 11, 2014
    @xiaokai 可惜这不是QQ,不然我肯定发个吐血的表情给你 我要的是自动判断后的转换 转换编码才是重点啊~~~~
    oott123
        5
    oott123  
       Oct 11, 2014 via Android   ❤️ 1
    「有的环境不支持」不是你选择其它方案的理由…毕竟配个 mb 扩展相当之容易。
    另外,我建议的方案是,你看看 utf8 或者 gb2312 里汉字的编码范围,用 Unicode 正则检查一下文件里是不是有那些字符。
    nilai
        6
    nilai  
       Oct 11, 2014   ❤️ 1
    头像不错。。。。。。。。。。。。。
    xiaokai
        7
    xiaokai  
       Oct 11, 2014
    @Doubear 都拿到目标网页的编码了 转码还存在什么问题?
    fising
        8
    fising  
       Oct 11, 2014
    用 Unicode 正则检查一下文件里是不是有那些字符
    --------------------------------------------------------------------
    这个正解
    BGLL
        9
    BGLL  
       Oct 11, 2014   ❤️ 1
    Mozilla的 universalchardet
    FF用这个来预判网页编码

    http://www-archive.mozilla.org/projects/intl/UniversalCharsetDetection.html
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1215 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 82ms · UTC 17:55 · PVG 01:55 · LAX 10:55 · JFK 13:55
    ♥ Do have faith in what you're doing.