首頁 >後端開發 >PHP問題 >php如何實現漢字替換

php如何實現漢字替換

藏色散人
藏色散人原創
2020-08-12 09:21:232853瀏覽

php實作漢字替換的方法:先建立一個PHP範例檔;然後透過「function substr_cut($user_name){...}」方法實作用星符號取代漢字即可。

php如何實現漢字替換

推薦:《PHP影片教學

PHP解決使用*取代漢字問題

對於字串某部分使用*號替換的問題:

1.實例:

$username = "linshouyue"; 
echo substr_replace($username,'****','3','4');

substr_replace()函數  

1.1)第一個參數為需處理的字串

1.2)第二參數為使用的替換符號

1.3)第三/四參數為需要替換的字串位置(從第三個字元開始替換後四位字元)

但是該函數對於英文字元/數字數沒有任何問題得,但是一旦遇到漢字就會出現很尷尬的問題,因為漢字與英文字元的位元組是不一樣的,可以用一下方法解決:

/**     * *替换中文汉字
     * @author 月月
     */
    function substr_cut($user_name){
        $strlen     = mb_strlen($user_name, 'utf-8');
        $firstStr     = mb_substr($user_name, 0, 1, 'utf-8');
        $lastStr     = mb_substr($user_name, -1, 1, 'utf-8');
        return $strlen == 2 ? $firstStr . str_repeat('*', mb_strlen($user_name, 'utf-8') - 1) : $firstStr . str_repeat("*", $strlen - 2) . $lastStr;
    }

以上是php如何實現漢字替換的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn