PHP过滤文本中的表情符(可用于导出excel时、表单提交时处理用户输入的不规范内容)

橙子与柠檬 / 2024-09-21 / 原文

PHP版本
/**
 * @notes: 过滤不合法的utf8字符
 * @param int|string|null $str
 */
function filter_partial_utf8char($str)
{
    if (empty($str)) {
        return '';
    }
    return preg_replace_callback(
        '/./u',
        function (array $match) {
            return strlen($match[0]) >= 4 ? '' : $match[0];
        }, $str);
}

  

下面附上JS版本的
//过滤不合法的utf8字符
function filterPartialUtf8Char(str) {
    return str.replace(/./gu, match => match.length >= 4 ? '' : match);
}