成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

php 截取中英文混合字符串

RdouTyping / 3608人閱讀

摘要:截取中英文字符串截取中英文字符串,就不必再用或者截取想這樣的字符串李三像不確定字符串是什么組成方式的時候,拿不準(zhǔn)該用還是的時候,可以試試以下方法,是否能解決的你得煩惱利用中英混合的字符串截取字符串的字節(jié)數(shù)得到字符串中第位字符的碼如果位高與,

php 截取中英文字符串

php 截取中英文字符串,就不必再用substr或者mb_substr

//截取想這樣的字符串
a李三

像不確定字符串是什么組成方式的時候,拿不準(zhǔn)該用substr還是mb_substr的時候 ,可以試試以下方法,是否能解決的你得煩惱

利用ASCII

/**
 * 
 * 中英混合的字符串截取
 * @param unknown_type $sourcestr
 * @param unknown_type $cutlength
 */
function assoc_substr($sourcestr, $cutlength) {
      $returnstr = "";
      $i = 0;
      $n = 0;
      $str_length = strlen ( $sourcestr ); //字符串的字節(jié)數(shù) 
      while ( ($n < $cutlength) and ($i <= $str_length) ) {
        $temp_str = substr ( $sourcestr, $i, 1 );
        $ascnum = Ord ( $temp_str ); //得到字符串中第$i位字符的ascii碼 
        if ($ascnum >= 224) {//如果ASCII位高與224,
              $returnstr = $returnstr . substr ( $sourcestr, $i, 3 ); //根據(jù)UTF-8編碼規(guī)范,將3個連續(xù)的字符計為單個字符   
              $i = $i + 3; //實際Byte計為3
              $n ++; //字串長度計1
        } elseif ($ascnum >= 192){ //如果ASCII位高與192,
              $returnstr = $returnstr . substr ( $sourcestr, $i, 2 ); //根據(jù)UTF-8編碼規(guī)范,將2個連續(xù)的字符計為單個字符 
              $i = $i + 2; //實際Byte計為2
              $n ++; //字串長度計1
        } elseif ($ascnum >= 65 && $ascnum <= 90) {//如果是大寫字母,
          $returnstr = $returnstr . substr ( $sourcestr, $i, 1 );
          $i = $i + 1; //實際的Byte數(shù)仍計1個
          $n ++; //但考慮整體美觀,大寫字母計成一個高位字符
        }elseif ($ascnum >= 97 && $ascnum <= 122) {
            $returnstr = $returnstr . substr ( $sourcestr, $i, 1 );
            $i = $i + 1; //實際的Byte數(shù)仍計1個
            $n ++; //但考慮整體美觀,大寫字母計成一個高位字符
        } else {//其他情況下,半角標(biāo)點符號,
          $returnstr = $returnstr . substr ( $sourcestr, $i, 1 );
          $i = $i + 1; 
          $n = $n + 0.5; 
        }
      }
      return $returnstr;
}

通過這樣就可以很方便的進行一些字符串的截取等,避免因為字節(jié)不同而截取亂碼或者不對的情況。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/28743.html

相關(guān)文章

  • PHP 符串截取符串函數(shù)

    摘要:應(yīng)用場景從數(shù)據(jù)庫讀取產(chǎn)品標(biāo)題過長時,會導(dǎo)致布局混亂,我們可以使用字符串截斷函數(shù)進行截斷,用代替截斷部分。 應(yīng)用場景 從數(shù)據(jù)庫讀取產(chǎn)品標(biāo)題過長時,會導(dǎo)致布局混亂,我們可以使用字符串截斷函數(shù)進行截斷,用...代替截斷部分。 函數(shù)代碼 /** * 字符截?。▽χ形?、英文都可以進行截?。? * @param string $string 字符串 * @...

    godiscoder 評論0 收藏0
  • PHP經(jīng)驗總結(jié) - 開發(fā)技巧分享

    摘要:這里簡單介紹一下方法,中文解釋就是將整個文件讀入一個字符串,它有個參數(shù)這里他們分別表示要讀取的文件的名稱,另指路徑,后面三個參數(shù)基本不會用到,甚至第二個參數(shù)都很少見,所以重點是確定你要讀取文件的路徑,是絕對路徑。 簡述 接觸PHP差不多2年,從懵懂到入門,再到追求穩(wěn)定高效的高階級學(xué)習(xí),我慢慢的積累一些PHP編程經(jīng)驗,我本人記性不好,所以把這些經(jīng)驗記下來,慢慢累積,樂自助人,何樂不為呢?...

    mikasa 評論0 收藏0
  • PHP符串操作

    摘要:字符串變量被解析。很顯然,代表,代表獲取字符串的長度對于英文數(shù)字字母。你好,截取字符串對于純英文字符,可以使用對于中文字符,可以使用例如你好,世界查找字符串查找字符串,有內(nèi)置函數(shù)代表,應(yīng)該代表。當(dāng)然也有函數(shù)用于處理其他編碼的字符串。 1. 單引號和雙引號 PHP可以在單引號或者雙引號中包含字符串。但是單引號和雙引號有所區(qū)別。 單引號包含的內(nèi)容會被認(rèn)為是普通字符串 雙引號中允許包含字符...

    taoszu 評論0 收藏0
  • PHP 常用函數(shù)記錄 一

    遞歸創(chuàng)建目錄 /** * 遞歸創(chuàng)建目錄 * @param [type] $dir [description] * @return [type] [description] */ function mkdirs($dir) { if(!is_dir($dir)){ if(!mkdirs(dirname($dir))){ return...

    snowell 評論0 收藏0
  • Smarty(變量修飾器)

    摘要:一概念變量修飾器調(diào)節(jié)器可用于變量,自定義函數(shù)和字符串。請使用符號和修飾器名稱應(yīng)用修飾器。變量修飾器由賦予的參數(shù)值決定其行為。與之相反將變量值轉(zhuǎn)成大寫字母所有字母,無參數(shù)。它與修飾器的效果剛好相反。它們會按復(fù)合的順序來作用于變量,從左到右。 一、概念 變量修飾器(調(diào)節(jié)器)可用于變量,自定義函數(shù)和字符串。 請使用‘|’符號和修飾器名稱應(yīng)用修飾器。 變量修飾器由賦予的參數(shù)值決定其行為。 參數(shù)...

    linkin 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<