php中的一个中文字符串截取函数

  PHP代码:

  --------------------------------------------------------------------------------

  <?php

  /**

  ***@Author:LAD

  ***@URL   :<a href="http://www.cnpik.com/" target="_blank">http://www.cnpik.com/</a>

  ***@E_mail:[email protected]

  ***@随便用,不收钱 :-)

  */

  function cnSubStr($string,$sublen)

  {

  if($sublen>=strlen($string))

  {

  return $string;

  }

  $s="";

  for($i=0;$i<$sublen;$i++)

  {

  if(ord($string{$i})>127)

  {

  $s.=$string{$i}.$string{++$i};

  continue;

  }else{

  $s.=$string{$i};

  continue;

  }

  }

  return $s;

  }// End Function cnSubStr($string,$sublen)

  /////////// Use like this :

  echo "<p>__________________________<p>";

  $string="242432反对感是456犯得上广泛大使馆地方7890";

  $sublen=strlen($string);

  $len=20;

  echo $string."<p>";

  echo "总长为:".($sublen+1)."<p>";

  echo "截取数:".$len."<p>";

  for($i=1;$i<=$sublen+1;$i++){

  if($i>$len){

  echo $i."<b> →</b> ".cnSubStr($string,$i)."…<br>";

  continue;

  }

  echo $i."<b> →</b> ".cnSubStr($string,$i)."<br>";

  }

  ?>