程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> mb_substr中文的截取小知識

mb_substr中文的截取小知識

編輯:關於PHP編程

mb_substr函數是substr函數的升級版,mb_substr支持中文截取並且不會出現亂碼問題,下面我來介紹一下mb_substr基礎知識。

 代碼如下 復制代碼

<?php
$str = ‘這樣一來我的字符串就不會有亂碼^_^’;
echo “mb_substr:” . mb_substr($str, 0, 7, ‘utf-8′);
//結果:這樣一來我的字
echo “<br>”;
echo “mb_strcut:” . mb_strcut($str, 0, 6, ‘utf-8′);
//結果:這樣
?>

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


在實際使用過程中需要和mb_strlen配合使用,mb_strlen的使用方法和strlen類似,只是多了一個編碼參數:mb_strlen("我是要被計算長度的字符", "gbk");結果是11。

詳細的使用例子:

比如字符串超過20個就需要截取:

 代碼如下 復制代碼

if(mb_strlen($str, "gbk") >20)

{

  $str = mb_substr($str, 0, 20, "gbk");

}


注意:

確保你的Windows/system32下有php_mbstring.dll這個文件,沒有就從你Php安裝目錄extensions裡拷入Windows/system32裡面。

2.在windows目錄下找到php.ini打開編輯,搜索mbstring.dll,找到
;extension=php_mbstring.dll把前面的;號去掉,這樣mb_substr函數就可以生效了

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved