php自定義函數(shù)截取漢字長度
更新時間:2014年05月15日 09:41:17 作者:
php中截取漢字長度的方法有很多,本例通過自定義函數(shù)來完成這個需求,感興趣的朋友可以參考下
復(fù)制代碼 代碼如下:
function msubstr($str,$start,$len) {
$strlen=$start+$len;
for($i=0;$i<$strlen;$i++) {
if(ord(substr($str,$i,1))>0xa0) {
$tmpstr.=substr($str,$i,2);
$i++;
} else
$tmpstr.=substr($str,$i,1);
}
return $tmpstr;
}
復(fù)制代碼 代碼如下:
<?PHP
$str="這個字符好長呀,^_^";
$Short_Str=showShort($str,4);//截取前面4個漢字,結(jié)果為:這個字符...
Echo "$Short_Str";
Function csubstr($str,$start,$len)
{
$strlen=strlen($str);
$clen=0;
for($i=0;$i<$strlen;$i++,$clen++)
{
if ($clen>=$start+$len)
break;
if(ord(substr($str,$i,1))>0xa0)
{
if ($clen>=$start)
$tmpstr.=substr($str,$i,2);
$i++;
}
else
{
if ($clen>=$start)
$tmpstr.=substr($str,$i,1);
}
}
return $tmpstr;
}
Function showShort($str,$len)
{
$tempstr = csubstr($str,0,$len);
if ($str<>$tempstr)
$tempstr .= "..."; //要以什么結(jié)尾,修改這里就可以.
return $tempstr;
}
再來看看嘮叨的方法 怎么樣,簡潔吧?
復(fù)制代碼 代碼如下:
$len = 19;
$text = "怎么將新聞的很長的標(biāo)題只顯示前面一些字,后面用.....來代替?";
echo strlen($text)<=$len ? $text : (substr($text,0,$len).chr(0)."....");
您可能感興趣的文章:
相關(guān)文章
php如何調(diào)用webservice應(yīng)用介紹
Web Service也叫XML Web Service WebService是一種可以接收從Internet或者Intranet上的其它系統(tǒng)中傳遞過來的請求,輕量級的獨立的通訊技術(shù),接下來將詳細(xì)介紹php如何調(diào)用webservice,需要的朋友可以了解下2012-11-11PHP中的session永不過期的解決思路及實現(xiàn)方法分享
讓PHP的session永不過期,你可能沒有遇到這么郁悶的問題,但是我遇到過,很郁悶。2011-04-04php 服務(wù)器調(diào)試 Zend Debugger 的安裝教程
調(diào)試技術(shù)是我們編程中不可或缺的重要部分,調(diào)試器是每個IDE環(huán)境都必備的組件。既然如此,Zend Studio的集成環(huán)境擁有一個調(diào)試器也就是理所當(dāng)然的事情了,但是,該調(diào)試器在配置使用起來,其顯示出來的強(qiáng)勁功能一定會讓你驚嘆不已!2009-09-09如何基于PHP實現(xiàn)微信小程序pdf文件的預(yù)覽功能
前段時間文庫類微信小程序開發(fā)中遇到個問題,就是要在小程序中預(yù)覽pdf文件,下面這篇文章主要給大家介紹了關(guān)于如何基于PHP實現(xiàn)微信小程序pdf文件的預(yù)覽功能,需要的朋友可以參考下2022-05-05ajax php 實現(xiàn)寫入數(shù)據(jù)庫
看到同學(xué)背詞用的生詞本,覺得很不錯.正好自己也在看書,為了有一個好的效果,于是想做一個類似生詞本的,可以存知識點,和查看知識點的.2009-09-09php中$美元符號與Zen Coding沖突問題解決方法分享
Zen Coding是使用仿CSS選擇器的語法來快速開發(fā)HTML和CSS ——由Sergey Chikuyonok開發(fā)。 Zen Coding由兩個核心組件組成:一個縮寫擴(kuò)展器(縮寫為像CSS一樣的選擇器)和上下文無關(guān)的HTML標(biāo)簽對匹配器。2014-05-05