iconv substr擷取php中英文混排字串

2021-05-26 17:29:59 字數 3225 閱讀 9464

php5中解決中英文混排字串的函式包括iconv_substr() ,iconv_strpos() ,iconv_strlen()

substr()函式可以分割文字,但要分割的文字如果包括中文字元往往會遇到問題,這時可以用mb_substr()/mb_strcut這個函式,mb_substr()/mb_strcut的用法與substr()相似,只是在mb_substr()/mb_strcut最後要加入多乙個引數,以設定字串的編碼,但是一般的伺服器都沒開啟php_mbstring.dll,需要在php.ini在把php_mbstring.dll開啟。

舉個例子:

<?php

echo mb_substr('這樣一來我的字串就不會有亂碼^_^', 0, 7, 'utf-8');

?>

輸出:這樣一來我的字

<?php

echo mb_strcut('這樣一來我的字串就不會有亂碼^_^', 0, 7, 'utf-8');

?>

輸出:這樣一

從上面的例子可以看出,mb_substr是按字來切分字元,而mb_strcut是按位元組來切分字元,但是都不會產生半個字元的現象。

php5 用此函式: iconv_substr($rs[0][file_info],0,16,"gb2312")

/**

02* 字串擷取,支援中文和其他編碼

03*

04* @static

05* @access public

06* @param string $str 需要轉換的字串

07* @param string $start 開始位置

08* @param string $length 擷取長度

09* @param string $charset 編碼格式

10* @param string $suffix 截斷顯示字元

11* @return string

12*/

13functionmsubstr($str,$start=0,$length,$charset="utf-8",$suffix=true)

14

20$re['utf-8']   ="/[/x01-/x7f]|[/xc2-/xdf][/x80-/xbf]|[/xe0-/xef][/x80-/xbf]|[/xf0-/xff][/x80-/xbf]/";

21$re['gb2312'] ="/[/x01-/x7f]|[/xb0-/xf7][/xa0-/xfe]/";

22$re['gbk']    ="/[/x01-/x7f]|[/x81-/xfe][/x40-/xfe]/";

23$re['big5']   ="/[/x01-/x7f]|[/x81-/xfe]([/x40-/x7e]|/xa1-/xfe])/";

24preg_match_all($re[$charset],$str,$match);

25$slice= join("",array_slice($match[0],$start,$length));

26if($suffix)return$slice."…";

27return$slice;

28}

**

手機怎麼進ph 關於pH調整的有效方法

ph的有效調整方法 記住一句話 公升高容易,降低難。濾材的處理 ph值的前期調整 濾材進缸前的處理是最為重要的,通過濾材的前期處理,可以減少後期調整ph的麻煩和風險。方法 把要更換的濾材提前5 7天清洗後放入盆或其他容器中,加水 新增ph調低劑,讓濾材在超低ph值的水中浸泡,中和濾材的鹼性,在24 ...

ph 的使用步驟

arcanist使用者指南windows updated 44 day s ago所有使用者 1安裝php,並且將php安裝目錄加入到path環境變數中 2複製php.ini development檔案為php.ini,並且把extension dir ext extension php curl....

phpstorm xdebug 除錯本地php檔案

phpstorm php檔案斷點除錯功能 xdebug 1 先在php.ini 找到檔案後面的 zend extension 把 php xdebug.dll 這個模組路徑加上去 zend extension e php phpstudy phptutorial php php 5.6.27 nts...