php自訂函數截取漢字長度_PHP教程

來源:互聯網
上載者:User
複製代碼 代碼如下:
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;

}

複製代碼 代碼如下:
$str="這個字元好長呀,^_^";
$Short_Str=showShort($str,4);//截取前面4個漢字,結果為:這個字元...
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 .= "..."; //要以什麼結尾,修改這裡就可以.

return $tempstr;
}

再來看看嘮叨的方法 怎麼樣,簡潔吧?
複製代碼 代碼如下:
$len = 19;
$text = "怎麼將新聞的很長的標題只顯示前面一些字,後面用.....來代替?";
echo strlen($text)<=$len ? $text : (substr($text,0,$len).chr(0)."....");

http://www.bkjia.com/PHPjc/770586.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/770586.htmlTechArticle複製代碼 代碼如下: 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++; }...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.