用php的多字节处理函数,要加载这个库将substr这个函数改用mb_substr

解决方案 »

  1.   

    可以判断14字个符中有奇数个ascii还是有偶数个ascii就行了.....
    提示:ord($_)>128就是半个汉字,反之则是ascii了...
      

  2.   

    直接用substr($string,0,14)不就行了吗?不知道我理解的是否正确?
      

  3.   

    怎么加载?请wasy兄具体点说好吗?
      

  4.   

    sunauqt(阳光快车)
    不对的,substr($string,0,14)如果$string 里都是汉字就没问题,但是只要14个里面有奇数个英文字母,那么就会多取了,其实这个时候只要substr($string,0,13)才是正确的
      

  5.   

    你直接用mb_substring这个函数试一试。看是否提示没有这个函数?可能已经加载了。如果是windows,加载php_mbstring.dll更改php.ini,
    去掉;extension=php_mbstring.dll前面的;号
    并设置extension_dir目录为这个文件所在的目录,这个文件一般放在php目录的extensions字目录中重新启动apache
      

  6.   

    判断14字符中有奇数还是偶数个ascii字符。ord($_)>128是半字汉字.....
      

  7.   

    $title=substr($title,0,14);
    if (ord($title)>128)
    {    
     $title=substr($title,0,13); 
     $title=$title."...";
    }
    是这样吗?
    extension=php_mbstring.dll找不到,是不是php版本问题?
      

  8.   

    1。在php.ini中找不到,extension=php_mbstring.dll,不知道是不是版本问题
    2。
    if(strlen($title)>14){
    $title=substr($title,0,14);
                                if(ord($title)>128)
                                {
                                     $title=substr($title,0,13);
                                 } }这样也不行,是不是用错了
      

  9.   

    没有就下载或者升级下载地址;
    http://kromann.info/php4/php_mbstring.dll
      

  10.   

    没有就下载或者升级下载地址;
    http://kromann.info/php4/php_mbstring.dll