在线不卡日本ⅴ一区v二区_精品一区二区中文字幕_天堂v在线视频_亚洲五月天婷婷中文网站

  • <menu id="lky3g"></menu>
  • <style id="lky3g"></style>
    <pre id="lky3g"><tt id="lky3g"></tt></pre>

    中文字符串截取造成的亂碼處理

    近日接手一個(gè)二開添加翻譯插件的任務(wù),加翻譯插件前網(wǎng)頁顯示正常,加插件后部分網(wǎng)頁前部顯示正常,后部顯示亂碼,看起來與文本編碼不正確差不多。一開始感覺有些無從下手,仔細(xì)瀏覽網(wǎng)頁后發(fā)現(xiàn),每次出現(xiàn)亂碼前都有個(gè)不完整的文字,懷疑是文字截取錯(cuò)誤造成了亂碼。

    打開源碼,發(fā)現(xiàn)原代碼中使用了substr函數(shù)來截取字符串。在php中,substr函數(shù)是嚴(yán)格按字節(jié)數(shù)來截取字符串,雖然一個(gè)中文字符為3個(gè)字節(jié),如果僅以3的倍數(shù)來進(jìn)行截取,字符串中一旦出現(xiàn)字母、數(shù)字等單字節(jié)字符而沒有在截取前進(jìn)行判斷處理,就很容易造成出現(xiàn)截取到半個(gè)中文字符的情況。

    例如如下代碼,

    $str=”活潑楓葉6c的頭條號(hào)”;echo substr($str,0,15);

    運(yùn)行的結(jié)果為

    活潑楓葉6c

    雖然截取的15個(gè)字符,因?yàn)?c兩個(gè)字符只占2個(gè)字節(jié),打亂了字符串的規(guī)律,所以結(jié)果會(huì)出現(xiàn)半個(gè)字符。

    說到這里,可能有些小伙伴會(huì)想在截取前先對(duì)字符串進(jìn)行一下處理,或者自己寫一個(gè)函數(shù)。其實(shí)大可不必這么麻煩,php已經(jīng)為我們提供了解決方案。

    1、按字符數(shù)量截取字符串的mb_substr

    例如

    $str=”活潑楓葉6c的頭條號(hào)”;echo mb_substr($str,0,7);

    運(yùn)行的結(jié)果為

    活潑楓葉6c的

    需要截取幾個(gè)字,參數(shù)就寫幾個(gè)字,一目了然。

    2、按字節(jié)截取字符串的mb_strcut

    例如

    $str=”活潑楓葉6c的頭條號(hào)”;echo mb_strcut($str,0,15);

    運(yùn)行結(jié)果為

    活潑楓葉6c

    可以看到,雖然mb_strcut也是按字節(jié)截取字符串,但它不會(huì)截?cái)嘧址?/p>

    在PHP中,substr雖然用得很多,但要對(duì)中文字符串進(jìn)行截取時(shí),應(yīng)根據(jù)需要選擇mb_substr或mb_strcut,從而避免出現(xiàn)半個(gè)字符亂碼的情況。

    鄭重聲明:本文內(nèi)容及圖片均整理自互聯(lián)網(wǎng),不代表本站立場(chǎng),版權(quán)歸原作者所有,如有侵權(quán)請(qǐng)聯(lián)系管理員(admin#wlmqw.com)刪除。
    用戶投稿
    上一篇 2022年7月27日 15:16
    下一篇 2022年7月27日 15:16

    相關(guān)推薦

    • 存儲(chǔ)過程語法(sql server存儲(chǔ)過程語法)

      今天小編給各位分享存儲(chǔ)過程語法的知識(shí),其中也會(huì)對(duì)sql server存儲(chǔ)過程語法進(jìn)行解釋,如果能碰巧解決你現(xiàn)在面臨的問題,別忘了關(guān)注本站,現(xiàn)在開始吧! oracle存儲(chǔ)過程基本語法…

      2022年11月26日
    • 世界杯海外直播在哪看(中國女籃世界杯直播)

      最近一段時(shí)間最火爆的話題就是世界杯了,大家都想第一時(shí)間觀看直播比賽,一些海外小伙伴在問世界杯海外直播在哪看?2022年世界杯海外直播免費(fèi)觀看平臺(tái)有哪些?下面小編為大家?guī)硎澜绫M狻?/p>

      2022年11月25日
    • 卡塔爾世界杯吉祥物中文叫什么名字(卡塔爾世界杯吉祥物動(dòng)畫)

      2022年卡塔爾世界杯的話題熱度超級(jí)火爆的,其中本屆世界杯中的吉祥物也受到了很多網(wǎng)友們的喜愛,大家也都在準(zhǔn)備入手一只。那么,卡塔爾世界杯吉祥物中文叫什么名字?大家稱之為“餃子皮”的…

      2022年11月23日
    • 翻譯韓文(英文翻譯韓文)

      本文主要講的是翻譯韓文,以及和英文翻譯韓文相關(guān)的知識(shí),如果覺得本文對(duì)您有所幫助,不要忘了將本文分享給朋友。 韓文用韓文怎么說? 韓文的韓文是??。 ?? 1、含義:韓文 2、用法:…

      2022年11月21日
    • 如何在手機(jī)上文字排版(文字排版軟件哪個(gè)好用)

      經(jīng)常面對(duì)大量圖片和文字的編輯和排版,但是找不到又好看又好用的模板,只能自己慢慢去調(diào)整,或者就是簡單的文字插圖片,沒新意又不能吸引人,真的太需要一個(gè)模板多的圖文編輯器了! 我們登錄后…

      2022年11月18日
    • pro和max是什么意思(pro是什么意思中文)

      如今手機(jī)的后綴越來越多,諸如Pro、Ultra、Note、Mate、SE、mini、Max等等之類的詞,眾多英文詞語的加持下,經(jīng)常會(huì)讓人看得暈頭轉(zhuǎn)向,不知道它們之間究竟有什么差別?…

      2022年11月18日
    • 金鐵霖去世,大衣哥朱之文發(fā)長文悼念!

      文/嗯哼哼崩恰恰娛樂 金鐵霖去世,大衣哥朱之文發(fā)長文悼念! 11月16日,許久沒有消息的大衣哥突然又位居熱榜,他罕見在自己的社交賬號(hào)發(fā)布了一段文字,長長的文字為的是紀(jì)念金鐵霖老師對(duì)…

      2022年11月17日
    • 視頻剪輯app排行榜前十名(視頻剪輯軟件哪個(gè)好)

      是不是有很多童鞋們,想要做日常視頻剪輯、Vlog、影視剪輯但找不到好用的視頻剪輯軟件,被無情勸退?我花了2個(gè)小時(shí)看了以下全部的回答,給大家吐血整理了以下被推薦次數(shù)最多,以及個(gè)人使用…

      2022年11月15日
    • 推薦13種郵箱推廣的方式(郵箱推廣都有哪些方式)

      即使再厲害的市場(chǎng)營銷人員也有靈感卡殼的時(shí)候,但千萬別因此而沮喪,最重要是找到并善于利用一些耳目一新的技巧方法。以下來自多渠道智能化營銷服務(wù)機(jī)構(gòu)Webpower的營銷專家推薦的13個(gè)…

      2022年11月14日
    • 怎樣進(jìn)別人的面對(duì)面群(微信面對(duì)面建群怎么加入)

      微信幾乎每個(gè)人都在用,隨著版本的迭代更新,微信上的功能也越來越多,我也是今天才知道,原來微信右上角+號(hào),一直有隱藏功能。 01^檢測(cè)真假好友 微信好友成百上千,別人把你刪了,也許你…

      2022年11月10日

    聯(lián)系我們

    聯(lián)系郵箱:admin#wlmqw.com
    工作時(shí)間:周一至周五,10:30-18:30,節(jié)假日休息