- 1、php 怎麼截取漢字字符串?
- 2、php截取字符串函數
- 3、PHP截取字符串長度
?php
$str = ‘這樣一來我的字符串就不會有亂碼^_^’;
echo “mb_substr:” . mb_substr($str, 0, 7, ‘utf-8’);
//結果:這樣一來我的字
echo “
“;
echo “mb_strcut:” . mb_strcut($str, 0, 6, ‘utf-8’);
//結果:這樣
?
首先
1.確保你的Windows/system32下有php_mbstring.dll這個文件,沒有就從你Php安裝目錄extensions里拷入Windows/system32裏面。
2.在windows目錄下找到php.ini打開編輯,搜索mbstring.dll,找到
;extension=php_mbstring.dll把前面的;號去掉,這樣mb_substr函數就可以生效了
mb_strcut函數功能也可以截取字符串長度,下面實例具體看看區別在哪:
mb_substr();
php
//構造字符串
$str = “ABCDEFGHIJKLMNOPQRSTUVWXYZ”;
echo “原字符串:”.$str.”
“;
//按各種方式進行截取
$str1 = substr($str,5);
echo “從第5個字符開始取至最後:”.$str1.”
“;
$str2 = substr($str,9,4);
echo “從第9個字符開始取4個字符:”.$str2.”
“;
$str3 = substr($str,-5);
echo “取倒數5個字符:”.$str3.”
“;
$str4 = substr($str,-8,4);
echo “從倒數第8個字符開始向後取4個字符:”.$str4.”
“;
$str5 = substr($str,-8,-2);
echo “從倒數第8個字符開始取到倒數第2個字符為止:”.$str5.”
“;
?
支持中英文混合截取。
代碼如下 複製代碼
/*
——————————————————
參數:
$str_cut 需要截斷的字符串
$length 允許字符串顯示的最大長度
程序功能:截取全角和半角(漢字和英文)混合的字符串以避免亂碼
——————————————————
*/
function substr_cut($str_cut,$length)
{
if (strlen($str_cut) $length)
{
for($i=0; $i $length; $i++)
if (ord($str_cut[$i]) 128) $i++;
$str_cut = substr($str_cut,0,$i).”..”;
}
return $str_cut;
}
?
php截取中文字符串無亂碼函數:
function ZHsubstr($str, $start=0, $length, $charset=”utf-8″){
$len = strlen($str); //原位元組數
if($len $length)
$suffixStr = “…”;
else
$suffixStr = “”;
if(function_exists(“mb_substr”))
return mb_substr($str, $start, $length, $charset).$suffixStr;
elseif(function_exists(‘iconv_substr’)) {
return iconv_substr($str,$start,$length,$charset).$suffixStr;
}
$re[‘utf-8’] = “/[x01-x7f]|[xc2-xdf][x80-xbf]|[xe0-xef][x80-xbf]{2}|[xf0-xff][x80-xbf]{3}/”;
$re[‘gb2312’] = “/[x01-x7f]|[xb0-xf7][xa0-xfe]/”;
$re[‘gbk’] = “/[x01-x7f]|[x81-xfe][x40-xfe]/”;
$re[‘big5’] = “/[x01-x7f]|[x81-xfe]([x40-x7e]|xa1-xfe])/”;
preg_match_all($re[$charset], $str, $match);
$slice = join(“”,array_slice($match[0], $start, $length));
return $slice.$suffixStr;
}
使用方法:
$str = “$page_title”;
$page_title=ZHsubstr($str, 0, 40, ‘utf-8’);
原創文章,作者:MRA4W,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/127141.html