mb_encode_numericentity
将字符编码为 HTML 数字字符串引用
PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8
mb_encode_numericentity() 函数用于将字符串中指定范围内的字符转换成相应的数字实体编码。该函数通常用于处理多字节编码字符,使得这些字符可以安全地显示在 HTML 或 XML 中。
mb_encode_numericentity(string $string, array $convmap, string $encoding = mb_internal_encoding(), bool $is_hex = false): string
返回转换后的字符串,指定范围内的字符被转换成对应的数字实体编码。
<?php $convmap = [0x80, 0xFFFF, 0, 0xFFFF]; $str = "这是测试字符串 with some 英文 and 中文 characters."; $result = mb_encode_numericentity($str, $convmap, "UTF-8"); echo $result; ?>
上述示例中,定义了一个转换映射 $convmap,用于将 Unicode 编码范围从 0x80 到 0xFFFF 之间的字符转换成数字实体。字符串中所有非 ASCII 字符(如中文字符)都会被转换为数字实体编码并输出,而 ASCII 字符保持不变。