给我e-mail地址。我给你发一个文件。

解决方案 »

  1.   

    把那个函数给你提出来了。用下面这个函数吧。
    /**
     * getsubstr -- 得到子字符串
     * 主要用于解决对于一个汉字字符串,在取子串时会被截断的问题
     * $sourcestring -- 源字符串
     * $n -- 子串长度
     * $addtional -- 表示是否在子串后加上"..."
     */
    function getsubstr($sourcestring,$n,$addtional=true){
            $length=strlen($sourcestring);
            //根据用户想输出的长度,获得变量
            if($length<=$n){
             $substr=$sourcestring;
            }else{
                    $label=0;  //标志
                    for($i=0;$i<$n;$i++){
                            $schr=substr($sourcestring,$i,1);
                            if(ord($schr)>127){
                             if($label==0){//如果为1,则说明已经取了汉字的一半
                                     $label=1;
                                    }else{
                                            $label=0;
                                    }
      }
                            $substr.=$schr;
                    }
                    if($label==1){//如果已经取了汉字的一半,则取另一半
                            $substr.=substr($sourcestring,$i,1);
                    }
                    if($addtional){
                     $substr.="...";
             }
            }
            return $substr;
    }
      

  2.   

    这是goodname老大定义的函数很好用!
    //--------------------------------------------------------//        
           
           function  csubstr($string,$start,$length)        
           {  
                   $str="";  
                   $len=$start+$length;  
                   for($i=$start;$i<$len;$i++){  
                           if(ord(substr($string,$i,1))>0xa0){        
                                   $str.=substr($string,$i,2);        
                                   $i++;        
                           }        
                           else          
                                   $str.=substr($string,$i,1);  
                   }                    
                             
                   return  $str;                
           }  
      

  3.   

    使用:
    $teststring="这是一个测试。",取9个字符,多余的部分用"..."代替
    $deststring=getsubstr($teststring,9);
      

  4.   

    仅仅是为了显示,就不必那么麻烦了$text = "请问怎么控制数据库里显示到页面中的字数呢";
    if(strlen($text) > 9)
      echo substr($text,0,9).chr(0)."...";
    else
      echo $text;
      

  5.   

    很简单啊
    用$test = substr(str 字符串,int 起始位置,int 长度);
    $test=$test."...";