Быстро разбирает входную строку

# MessageFormatter::parseMessage

# msgfmt_parse_message

(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)

MessageFormatter::parseMessage -- msgfmt_parse_message — Быстро разбирает входную строку

### Описание

Объектно-ориентированный стиль

public static function MessageFormatter::parseMessage(string `$locale`, string `$pattern`, string `$message`): array|false

Процедурный стиль

function msgfmt_parse_message(string `$locale`, string `$pattern`, string `$message`): array|false

Разбирает входную строку без явного создания объекта форматирования. Используйте эту функцию, когда операция форматирования выполняется только один раз и не требует сохранения параметров или состояния.

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

`locale`

  Локаль, используемая для разбора частей, зависящих от локали

`pattern`

  Шаблон, использующийся для разбора `message`.

`message`

  Строка (string) для разбора, соответствующая `pattern`.

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

Массив (array), содержащий извлечённые элементы или `false` в случае возникновения ошибки.

### Примеры

Пример #1 Пример использования msgfmt_parse_message()

    <?php
    $fmt = msgfmt_parse_message('en_US', "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree",
                                "4,560 monkeys on 123 trees make 37.073 monkeys per tree");
    var_export($fmt);

    $fmt = msgfmt_parse_message('de', "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum",
                                "4.560 Affen auf 123 Bäumen sind 37,073 Affen pro Baum");
    var_export($fmt);
    ?>

Пример #2 Пример использования в объектно-ориентированном стиле

    <?php
    $fmt = MessageFormatter::parseMessage('en_US', "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree",
                                "4,560 monkeys on 123 trees make 37.073 monkeys per tree");
    var_export($fmt);

    $fmt = MessageFormatter::parseMessage('de', "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum",
                                "4.560 Affen auf 123 Bäumen sind 37,073 Affen pro Baum");
    var_export($fmt);
    ?>

Результат выполнения приведённого примера:

    array (
      0 => 4560,
      1 => 123,
      2 => 37.073,
    )
    array (
      0 => 4560,
      1 => 123,
      2 => 37.073,
    )

### Смотрите также

- msgfmt_create() - Создаёт средство форматирования сообщений
- msgfmt_format_message() - Быстро форматирует сообщение
- msgfmt_parse() - Разбирает строку согласно шаблону

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