內容一樣但是字串長度不一致**)
<?php
header("content-type: text/html;charset=utf-8");
$data[0]=$str1="後勤保障部";
$data[1]=$str2="後勤保障部";
var_dump($data);
//檢視編碼方式
$encode1 = mb_detect_encoding($str1, array("ascii","utf-8","gb2312","gbk","big5"));
$encode2 = mb_detect_encoding($str2, array("ascii","utf-8","gb2312","gbk","big5"));
//當mb_strlen的內碼選擇為utf-8的時候,則會將中文字元當成乙個字元
//strlen,得到的是字串所佔的位元組數
echo "str1='".$str1."'".": 字元長度:".mb_strlen($str1).": 位元組長度:".strlen($str1)." 編碼:".$encode1."
";echo "str2='".$str2."'".": 字元長度:".mb_strlen($str2).": 位元組長度:".strlen($str2)." 編碼:".$encode2."
";//擷取str1後面兩個未顯示字元
echo "
------------------擷取str1後面兩個未顯示字元---------------------
";$res=mb_substr($str1, 5,2);
echo "str1最後兩字元: ".$res."
";echo "str1長度: ".mb_strlen($res)."
";//比較
echo "
--------------------------相等比較----------------------------------
";echo "str1 與 str2比較: ";
echo strcomp($str1,$str2)."
";echo "str2 與 str2比較: ";
echo strcomp($str2,$str2)."
";//剔除str1字串中非中文
preg_match_all('/[\x-\x]+/u', $str1, $matches);
$str1 = join('', $matches[0]);
echo "
---------------------剔除str1字串中非中文後----------------------
";echo "str1='".$str1."'".": 字元長度:".mb_strlen($str1).": 位元組長度:".strlen($str1)." 編碼:".$encode1."
";echo "str1 與 str2比較: ";
echo strcomp($str1,$str2)."
";function strcomp($str1,$str2)else
} ?>
字串擷取(長度一致)
using system using system.text namespace demo for int i 0 i str.length i console.readkey public static string cutstring string inputstring,int len els...
頁面字元編碼不一致的處理
有時候因為工作需要,會處理一些非開發人員處理的頁面,比如美工。就有可能遇到字元編碼不一致的情況。我們的開發環境預設用utf 8,但美工用gb2312。結果他處理過的檔案,有漢字的,都亂碼。如果是css檔案,裡面有漢字,還導致樣式失效,查詢了好久才找到原因。剛開始的時候,不知道在vs.net怎麼設定字...
頁面字元編碼不一致的處理
有時候因為工作需要,會處理一些非開發人員處理的頁面,比如美工。就有可能遇到字元編碼不一致的情況。我們的開發環境預設用utf 8,但美工用gb2312。結果他處理過的檔案,有漢字的,都亂碼。如果是css檔案,裡面有漢字,還導致樣式失效,查詢了好久才找到原因。剛開始的時候,不知道在vs.net怎麼設定字...