有時候我們需要擷取一些中英文混雜的字串,比如要顯示新聞的標題,如果標題過長,我們就擷取前面的15個字,後面用...顯示
用 php 的 substr 來擷取的話,有時候就會出現亂碼現象,因為 substr 是擷取英文本串的,如果偏巧第 15 個字元為漢字的話,那末就相當於把乙個漢字給切為2半了,那這時肯定會出現亂碼
其實解決方法也很簡單:
1> php.ini 中開啟大字符集,支援多字符集之間的轉換的擴充套件
extension=php_mbstring.dll
2> 使用 mb_substr() 函式
mb_substr( $str, 0, 15, 'utf-8' );
這樣就能有效的解決 php 擷取字串中文亂碼問題了
補充:還可以使用 iconv_substr() 函式
iconv_substr($str, 0, 12, 'gb2312');
PHP 解決 php 擷取字串中文亂碼問題
有時候我們需要擷取一些中英文混雜的字串,比如要顯示新聞的標題,如果標題過長,我們就擷取前面的15個字,後面用.顯示 用 php 的 substr 來擷取的話,有時候就會出現亂碼現象,因為 substr 是擷取英文本串的,如果偏巧第 15 個字元為漢字的話,那末就相當於把乙個漢字給切為2半了,那這時肯...
中文擷取字串
echo mb substr 我abc的名字是肖巖 0,7,utf 8 我abc的名字 echo mb strcut 我abc的名字是肖巖 0,9,utf 8 我abc的 其中mb substr中的第三個引數代表字元個數,mb strcut函式中的第三個引數代表字元數,utf 8編碼下漢字3個字元 ...
php 擷取字串中的字元
php 中的substr 函式功能 返回字串的一部分。substr string,start,length 其中引數的含義 string 必需。規定要返回其中一部分的字串。start 必需。規定在字串的何處開始。正數 在字串的指定位置開始 負數 在從字串結尾的指定位置開始 0 在字串中的第乙個字元處...