Устанавливает или получает символ замены

# mb_substitute_character

(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)

mb_substitute_character — Устанавливает или получает символ замены

### Описание

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

Задаёт замещающий символ на случай, когда кодировка входных данных задана неверно или код символа не существует в кодировке выходных данных. Недопустимые символы могут быть заменены на `«none»` (нет вывода), строку (string) или числовое значение (int) (код символа Юникода).

Эта настройка влияет на поведение следующих функций: mb_convert_encoding(), mb_convert_variables(), mb_output_handler(), mb_scrub() и mb_send_mail().

### Список параметров

`substitute_character`

  Задаёт значение Юникода в виде целого числа (int) или одной из следующих строк string:

  - `«none»`: нет вывода
  - `«long»`: код конечного (в выходной кодировке) символа (например: `U+3000`, `JIS+7E7E`)
  - `«entity»`: сущность конечного (в выходной кодировке) символа (например: `&#x200;`)

### Возвращаемые значения

Если аргумент `substitute_character` установили, функция вернёт `true` в случае успешного выполнения, иначе `false`. Функция вернёт текущую настройку, если символ `substitute_character` не установили.

### Список изменений

Версия | Описание
--- | ---
8.0.0 | Передача пустой строки в параметр `substitute_character` больше не поддерживается; вместо этого передают значение `"none"`.
8.0.0 | Параметр `encoding` теперь принимает значение `null`.

### Примеры

Пример #1 Пример использования функции mb_substitute_character()

    <?php

    /* Установка замещающего символа Unicode U+3013 (GETA MARK) */
    mb_substitute_character(0x3013);

    /* Задаём шестнадцатеричный формат */
    mb_substitute_character("long");

    /* Отображение текущей настройки */
    echo mb_substitute_character();

    ?>

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open