(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)
mb_encode_numericentity — Encode character to HTML numeric string reference
$string,$map,$encoding = null,$hex = false
Converts
specified character codes in string string
from character code to HTML numeric character reference.
stringThe string being encoded.
map
map is array specifies code area to
convert.
encodingDer Parameter encoding
legt die Zeichenkodierung fest. Wird er nicht übergeben, so wird die interne
Zeichenkodierung genutzt.
hexWhether the returned entity reference should be in hexadecimal notation (otherwise it is in decimal notation).
The converted string.
Throws a ValueError if
map contains any value that is not an
Integer, Float, Boolean, null, or a numeric string.
| Version | Beschreibung |
|---|---|
| 8.4.0 |
The mb_encode_numericentity() function now throws a
ValueError if map
contains any value that cannot be implicitly converted to int.
|
| 8.0.0 |
encoding ist nun nullable (akzeptiert den
null-Wert).
|
Beispiel #1 map example
<?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
);
// Specify Unicode value for start_codeN and end_codeN
// Add offsetN to value and take bit-wise 'AND' with maskN,
// then converts value to numeric string reference.
?>
Beispiel #2 mb_encode_numericentity() example
<?php
$str = "aAæÆあア𩸽";
/* Convert all UTF8 characters up to 4 bytes to HTML numeric character reference */
$convmap = [0, 0x1FFFFF, 0, 0x10FFFF];
var_dump(mb_encode_numericentity($str, $convmap, "utf8"));
/* Converts only 2-byte and 4-byte UTF8 characters to HTML numeric character reference */
$convmap = [
0x80, 0x7FF, 0, 0x10FFFF,
0x10000, 0x1FFFFF, 0, 0x10FFFF,
];
var_dump(mb_encode_numericentity($str, $convmap, "utf8"));
?>Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
string(46) "aAæÆあア鸽" string(28) "aAæÆあア鸽"