mb_substitute_character()

mb_substitute_character() — Set/Get substitution character.

Built-in function of PHP 8.5. The manual lists it as available in PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8. This page is the reference card: signature, parameters and return value, plus the changelog and the example the manual provides.

What it does

Specifies a substitution character when input character encoding is invalid or character code does not exist in output character encoding. Invalid characters may be substituted "none" (no output), string or int value (Unicode character code value).

Signature

mb_substitute_character(string|int|null $substitute_character = null): string|int|bool

Parameters

ParameterTypeWhat it takes
$substitute_characterstring|int|nullSpecify the Unicode value as an int, or as one of the following strings: "none": no output "long": Output character code value (Example: U+3000, JIS+7E7E) "entity": Output character entity (Example: Ȁ)

Return value

If substitute_character is set, it returns true for success, otherwise returns false. If substitute_character is not set, it returns the current setting.

Example

A runnable snippet:

/* Set with Unicode U+3013 (GETA MARK) */ mb_substitute_character(0x3013); /* Set hex format */ mb_substitute_character("long"); /* Display current setting */ echo mb_substitute_character();

Changelog

VersionChange
8.0.0Passing an empty string to substitute_character is no longer supported; "none" should be passed instead.
8.0.0encoding is nullable now.

All PHP 8.5 built-in functions

Reference card built from the PHP manual page mb_substitute_character() (PHP documentation, CC BY 3.0). The page is generated from the manual, so the wording of the parameter and return value text follows php.net.