<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>
            php語言

            php截取指定長度中文字符的技巧

            時間:2025-03-14 15:29:54 php語言 我要投稿
            • 相關推薦

            php截取指定長度中文字符的技巧

              在PHP程序開發中,經常會執行字符串的截取操作,那么php如何截取指定長度中文字符呢?來看看小編的分享吧!

              但字符串只要出現中文字符,就有可能導致PHP substr 中文亂碼,因為中文UTF-8編碼,每個漢字占3字節,而GB2312占2字節,英文占1字節,截取位數不準確,substr()硬生生地將一個中文字符“鋸”成兩半,造成斷開的字符會把其后的..拉過來一起做一個字,所以出現了PHP substr中文亂碼。下面說一下解決辦法:

              使用mb_stren()函數:

              [php] view plain copymixed mb_strlen ( string $str[, string $encoding = mb_internal_encoding() ] )

              第一個參數為要處理的的字符串 第二個參數為編碼方式 忽略則使用默認編碼

              根據此函數來截取中文字符串,自定義函數為:

              [php] view plain copy/**

              * @param string $string 要截取的字符串

              * @param int $len 要截取的長度

              * @param string $tail 截取后結尾替換的字符換

              * @return string $string 返回截取后的字符串

              */

              function changeStr($string,$len,$tail){

              if(mb_strlen($string)>$len){

              $tmp = mb_substr($string,0,$len,'utf8');

              return $tmp.$tail;

              }else{

              return $arg;

              }

              }

              測試:

              [php] view plain copy

              header('Content-type:text/html;charset=utf8');

              $string = "大眾創業、萬眾創新成為全社會的共識。開展股權眾籌融資試點”被正式寫入政府工作報告,

              即將修訂的《證券法》也將賦予股權眾籌一個法律地位。當今的中國是創業的熱土,也是股權眾籌最適宜生

              長的土壤,支持一大批創新創業公司因“眾籌”而成功是眾籌行業的歷史使命。中關村作為新經濟的風向標和

              策源地,率先誕生了中國最有影響力的一批股權眾籌平臺,推動股權眾籌行業健康發展,為“大眾創業、萬眾

              創新”營造良好發展環境成為中關村的歷史使命和必然選擇。";

              echo changeStr($string,10,'.....');

              /**

              * @param string $string 要截取的字符串

              * @param int $len 要截取的長度

              * @param string $tail 截取后結尾替換的字符換

              * @return string $string 返回截取后的字符串

              */

              function changeStr($string,$len,$tail){

              if(mb_strlen($string)>$len){

              $tmp = mb_substr($string,0,$len,'utf8');

              return $tmp.$tail;

              }else{

              return $arg;

              }

              }

              ?>

              輸出:

              大眾創業、萬眾創新.....


            【php截取指定長度中文字符的技巧】相關文章:

            php字符串截取函數06-10

            php字符串截取問題05-02

            PHP如何獲取中文字符串長度07-17

            解讀php字符串截取函數用法04-09

            php指定長度分割字符串str-split函數如何實現06-15

            詳解PHP用substr函數截取字符串03-01

            PHP數組長度的技巧05-20

            PHP生成隨機字符串的技巧12-29

            PHP生成自定義長度隨機字符串實例07-22

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看