(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)
mb_encode_numericentity — Codifica los caracteres en referencia numérica HTML
$string,$map,$encoding = null,$hex = false
Convierte los códigos de los caracteres especificados de la string string
a referencia numérica HTML.
stringLa string a codificar.
map
map es un array que especifica los
códigos a convertir.
encodingThe encoding
parameter is the character encoding. If it is omitted or null, the internal character
encoding value will be used.
hexSi la entidad de referencia devuelta debe estar en notación hexadecimal (de lo contrario, está en notación decimal).
La string convertida.
Genera una excepción ValueError si
map no es una lista de enteros.
| Versión | Descripción |
|---|---|
| 8.4.0 |
mb_encode_numericentity() ahora genera una
excepción ValueError si map
no es una lista de enteros.
|
| 8.0.0 |
encoding is nullable now.
|
Ejemplo #1 Ejemplo con map
<?php $convmap = array ( int start_code1, int end_code1, int offset1, int mask1, int start_code2, int end_code2, int offset2, int mask2, ........ int start_codeN, int end_codeN, int offsetN, int maskN ); // Especifica los valores Unicode de inicio (start_codeN) y fin (end_codeN) // Añade offsetN al valor, y realiza una operación AND a nivel de bits con maskN, luego // convierte el valor obtenido en entidad numérica ?>
Ejemplo #2 Ejemplo con mb_encode_numericentity()
<?php
$str = "aAæÆあア𩸽";
/* Convierte todos los caracteres UTF-8 hasta 4 bytes en referencias numéricas HTML */
$convmap = [0, 0x1FFFFF, 0, 0x10FFFF];
var_dump(mb_encode_numericentity($str, $convmap, "utf8"));
/* Convierte únicamente los caracteres UTF-8 de 2 y 4 bytes en referencias numéricas HTML */
$convmap = [
0x80, 0x7FF, 0, 0x10FFFF,
0x10000, 0x1FFFFF, 0, 0x10FFFF,
];
var_dump(mb_encode_numericentity($str, $convmap, "utf8"));
?>El ejemplo anterior mostrará :
string(46) "aAæÆあア鸽" string(28) "aAæÆあア鸽"