mb_chr

(PHP 7 >= 7.2.0, PHP 8)

mb_chrRetourne un caractère par sa valeur de point de code Unicode

Description

mb_chr(int $codepoint, ?string $encoding = null): string|false

Retourne une chaîne contenant le caractère spécifié par la valeur du point de code Unicode, encodé dans l'encodage spécifié.

Cette fonction complémente mb_ord().

Liste de paramètres

codepoint

Une valeur de point de code Unicode, e.g. 128024 pour U+1F418 ELEPHANT

encoding

Le paramètre encoding est l'encodage des caractères. S'il est omis ou null, l'encodage de caractères interne sera utilisé.

Valeurs de retour

Une chaîne contenant le caractère demandé, si il peut être représenté dans l'encodage spécifié ou false si une erreur survient.

Historique

Version Description
8.0.0 encoding est désormais nullable.

Exemples

Exemple #1 Test de différents codepoint

<?php
$values
= [65, 63, 0x20AC, 128024];
foreach (
$values as $value) {
var_dump(mb_chr($value, 'UTF-8'));
var_dump(mb_chr($value, 'ISO-8859-1'));
}
?>

L'exemple ci-dessus va afficher :

string(1) "A"
string(1) "A"
string(1) "?"
string(1) "?"
string(3) "€"
bool(false)
string(4) "🐘"
bool(false)

Voir aussi

add a note add a note

User Contributed Notes 1 note

up
0
boss3333 at laposte dot net
5 years ago
To convert the utf16 or utf8 decimal values (utf-8 can translate both encodings) to ascii characters using mb_ord, follow these steps:

Starting value:

1_Zvpxs4pf

Value converted to decimal value utf-16 or utf-8 (see ascii coding table):

49,95,90,118,112,120,115,52,112,102

recovery with mb_ord:

use: $ char = mb_chr ($ decimalValue, 'UTF-8');
return the correct character;

1, _, Z, v, p, x, s, 4, p, f

example:
$ start_String = 1_Zvpxs4pf;
$ start_String_to_Decimal = 49959011811212011552112102;
(decimal value of each character add in an array);
$ tab = [49, 95, 90, 118, 112, 120, 115, 52, 112, 102];
$ size = sizeof ($ tab);

$ tmpStr = '';

for ($ i = 0; $ i <$ size; $ i ++)
{
$ tmpStr. = mb_chr ($ tab [$ i], 'UTF-8');
}

echo $ tmpStr;

1_Zvpxs4pf
To Top