系统:FreeBSD + PHP + Apache + PostgreSQL

解决方案 »

  1.   


    http://www.linuxforum.net/books/UTF-8-Unicode.htmlhttp://www.xikao.com/reference/unicode.htm
      

  2.   

    想建一个多语言系统的网站,不管你输入何种语言、何种字符,只要输入进系统,就能看的见你输入时的内容,而不是一堆乱码?  比如说,你用的是简体中文的系统,不管你看的繁体中文、日文、俄语、法语等等,既使你不安装相对应的系统,也能看见用那些语言输入的内容,虽然你看不懂那些语言,但却能看得见,而不是一堆乱码。  最重要的是要考虑到存储空间、使用效率、普遍性等等。  系统:FreeBSD + PHP + Apache + PostgreSQL
      

  3.   

    unicode是统一两字节编码,utf-8是变长1-3字节。有一一对应关系。
    都能满足你上面提的要求。因为编码中包含了包括中文(繁简),日文,俄语,法语等,
    存储空间看你主要的内容,比如中文在utf8中基本是3字节,但英文是1字节(和ascii码相同),
    所以如果英文为主,就是utf8节省空间。
    效率似乎谈不上多大差别。
    普遍性。。不知道。utf8的一个优点在于如果中间出现个别字节丢失等,只会影响该字符,不会影响其后的字符。
      

  4.   

    utf8的一个优点在于如果中间出现个别字节丢失等,只会影响该字符,不会影响其后的字符。Unicode 会影响整体?
      

  5.   

    为什么我作的网页在utf8下margin无法设置为0,边沿老是有空白。
    见http://www.veryzone.org/而当编码设置为gb时候,就可以把空白边沿去掉?
    http://www.veryzone.org/default.php/bt_list/实在搞不懂。
      

  6.   

    to ahxiao: 看你显示出来的网页的源文件,开头有3个特殊字符,是utf8文件的BOM,去掉即可。
      

  7.   

    to  idustbin: unicode是双字节,如果中间丢失一个字节,另一字节会和后面字符的前半字节构成另外一个字符。gb这样的双字节编码有一样的问题。
    utf8因为字节开头有特殊标识位,可以识别。
    具体你查一下网上的资料即可。
      

  8.   

    to helloyou0(你好!) 
    请问怎么去掉?我是用editplus,我打开没有发现这3个字符阿。
    感谢你回答我的问题。
      

  9.   

    知道解决的方法了
    <?
    //此文件用于快速测试UTF8编码的文件是不是加了BOM,并可自动移除
    //By Bob Shen$basedir="."; //修改此行为需要检测的目录,点表示当前目录
    $auto=1; //是否自动移除发现的BOM信息。1为是,0为否。//以下不用改动if ($dh = opendir($basedir)) {
    while (($file = readdir($dh)) !== false) {
    if ($file!='.' && $file!='..' && !is_dir($basedir."/".$file)) echo "filename: $file ".checkBOM("$basedir/$file")." <br>";
    }
    closedir($dh);
    }function checkBOM ($filename) {
    global $auto;
    $contents=file_get_contents($filename);
    $charset[1]=substr($contents, 0, 1); 
    $charset[2]=substr($contents, 1, 1); 
    $charset[3]=substr($contents, 2, 1); 
    if (ord($charset[1])==239 && ord($charset[2])==187 && ord($charset[3])==191) {
    if ($auto==1) {
    $rest=substr($contents, 3);
    rewrite ($filename, $rest);
    return ("<font color=red>BOM found, automatically removed.</font>");
    } else {
    return ("<font color=red>BOM found.</font>");
    }

    else return ("BOM Not Found.");
    }function rewrite ($filename, $data) {
    $filenum=fopen($filename,"w");
    flock($filenum,LOCK_EX);
    fwrite($filenum,$data);
    fclose($filenum);
    }
      

  10.   

    ahxiao:
    用editplus打开文件,“参数选择”->“文件”->里面的最后一项“不添加bom字节到utf-8文件”(视版本而定,可能描述会有不同)勾上,确定,保存文件。
    就把utf-8里面的bom去掉了。其实dw,ue等也都有这个选项。