PHP 解決 php 擷取字串中文亂碼問題

2021-06-07 14:51:01 字數 523 閱讀 6488

有時候我們需要擷取一些中英文混雜的字串,比如要顯示新聞的標題,如果標題過長,我們就擷取前面的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怎麼擷取字串

php內建了大量的字串操作函式,比如php implode,explode等等,php擷取字串,可以用substr,mb substr二個函式。phpsubstr語法substr string,start,length 引數string 即要擷取的字串 start 即要擷取的開始位置 0表示從從前往...

PHP擷取字串

php 自帶幾種字串擷取函式,其中常用到的就是 substr 和 mb substr。前者在處理中文時,gbk 為 2 個長度單位,utf 為 3 個長度單位,後者指定編碼後,乙個中文即為 1 個長度單位。substr 不用說,有時會截 1 3 個中文或半個中文,當然顯示出來是亂碼了,相對來說 mb...

PHP擷取字串

php 構造字串 str abcdefghijklmnopqrstuvwxyz echo 原字串 str.按各種方式進行擷取 str1 substr str,5 echo 從第5個字元開始取至最後 str1.str2 substr str,9,4 echo 從第9個字元開始取4個字元 str2.st...