Fonction mb_substitute_character

La fonction mb_substitute_character permet de définir le caractère qui sera utilisé pour remplacer les séquences d'octets non valides dans les chaînes multioctets. En tant que paramètre, vous pouvez passer un entier (code du caractère) ou une chaîne "none" pour désactiver le remplacement, ou "long" pour afficher la représentation numérique du caractère non valide.

Syntaxe

phpmb_substitute_character([mixed $substitute_char]): mixed

Exemple

Définissons le caractère de remplacement comme point d'interrogation :

php<?php
  mb_substitute_character('?');
  echo mb_convert_encoding("\x80", "UTF-8", "ISO-8859-1");
?>

Résultat de l'exécution du code :

php'?'

Exemple

Récupérons le caractère de remplacement actuel :

php<?php
  $res = mb_substitute_character();
  var_dump($res);
?>

Résultat de l'exécution du code (code du caractère '?') :

php63

Exemple

Désactivons le remplacement des caractères non valides :

php<?php
  mb_substitute_character("none");
  echo mb_convert_encoding("\x80", "UTF-8", "ISO-8859-1");
?>

Résultat de l'exécution du code :

php''