PHP实现过滤掉非汉字字符只保留中文字符

5年以前  |  阅读数:761 次  |  编程语言:PHP 

    <?php

    $str = "a 1b 2b<中文>。xxyy字符";

    //转换 GB2312 -> UTF-8
    $str = mb_convert_encoding($str, 'UTF-8', 'GB2312');

    preg_match_all('/[\x{4e00}-\x{9fff}]+/u', $str, $matches);
    $str = join('', $matches[0]);

    //转换 UTF-8 -> GB2312
    $str = mb_convert_encoding($str, 'GB2312', 'UTF-8'); 

    echo $str; //输出 中文字符

    ?>

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8