置換文字を設定あるいは取得する

# 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"` (出力しない)、文字列または整数値 (Unicode 文字コード値) に置換することが可能です。

この設定は、mb_convert_encoding()、 mb_convert_variables()、 mb_output_handler()、 mb_scrub()、 および mb_send_mail() に影響します。

### パラメータ

`substitute_character`

  Unicode 値の整数または文字列を以下のように指定します。

  - `"none"`: 出力しない
  - `"long"`: 文字コードの値を出力する (例: `U+3000`、`JIS+7E7E`)
  - `"entity"`: 文字エンティティを出力する (例: `&#x200;`)

### 戻り値

`substitute_character` が設定された場合、成功時に `true`、そうでない場合に `false` を返します。 `substitute_character` が設定されない場合は、現在の設定を返します。

### 変更履歴

バージョン | 説明
--- | ---
8.0.0 | `substitute_character` に空文字列を渡すことはサポートされなくなりました。 代わりに `"none"` を渡すべきです。
8.0.0 | `encoding` は、nullable になりました。

### 例

例1 mb_substitute_character() の例

    <?php
    /* Unicode U+3013 (ゲタ記号)を設定 */
    mb_substitute_character(0x3013);

    /* HEX フォーマットを設定 */
    mb_substitute_character("long");

    /* 現在の設定を表示 */
    echo mb_substitute_character();
    ?>

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