. Также вы можете использовать синтаксис, который распознаётся
PHP-функцией [date()](https://secure.php.net/manual/ru/function.date.php), используя строку с префиксом `php:`.
```php
// ICU форматирование
echo Yii::$app->formatter->asDate('now', 'yyyy-MM-dd'); // 2014-10-06
// PHP date() форматирование
echo Yii::$app->formatter->asDate('now', 'php:Y-m-d'); // 2014-10-06
```
### Часовые пояса
Для форматирования значений даты и времени Yii будет преобразовывать их в соответствии с
[[yii\i18n\Formatter::timeZone|настроенным часовым поясом]]. Поэтому предполагается, что входные значения будут в UTC,
если часовой пояс не был указан явно. По этой причине рекомендуется хранить все значения даты и времени в формате UTC,
предпочтительно в виде UNIX timestamp, которая всегда в часовом поясе UTC по определению. Если входное значение
находится в часовом поясе, отличном от UTC, часовой пояс должен быть указан явно, как в следующем примере:
```php
// при условии Yii::$app->timeZone = 'Europe/Berlin';
echo Yii::$app->formatter->asTime(1412599260); // 14:41:00
echo Yii::$app->formatter->asTime('2014-10-06 12:41:00'); // 14:41:00
echo Yii::$app->formatter->asTime('2014-10-06 14:41:00 CEST'); // 14:41:00
```
Если [[yii\i18n\Formatter::timeZone|часовой пояс форматтера]] не задан явно, используется
[[yii\base\Application::timeZone|часовой пояс приложения]], то есть тот же, что задан в
конфигурации PHP.
> Note: Поскольку правила для часовых поясов принимаются различными правительствами и могут часто меняться,
> вероятно, информация в базе данных часовых поясов на вашем сервере не самая свежая.
> Как обновить базу вы можете узнать из [руководства ICU](http://userguide.icu-project.org/datetime/timezone#TOC-Updating-the-Time-Zone-Data).
> Смотрите также: [Настройка вашего PHP окружения для интернационализации](tutorial-i18n.md#setup-environment).
Форматирование чисел
-----------------------------------------------
Для форматирования числовых значений класс форматирования предоставляет следующие методы:
- [[yii\i18n\Formatter::asInteger()|integer]] — значение будет отформатировано как целое число, например `42`.
- [[yii\i18n\Formatter::asDecimal()|decimal]] — значение будет отформатировано как дробное число, состоящее из целого и
дробной части, например: `2,542.123` или `2.542,123`.
- [[yii\i18n\Formatter::asPercent()|percent]] — значение будет отформатировано как процентное значение, например `42%`.
- [[yii\i18n\Formatter::asScientific()|scientific]] — значение будет отформатировано в научном формате, например: `4.2E4`.
- [[yii\i18n\Formatter::asCurrency()|currency]] — значение будет отформатировано в денежном формате, например: `£420.00`.
Обратите внимание, чтобы эта функция работала правильно, локаль должна включать в себя часть со страной, например: `en_GB`
или `en_US` (потому что указание только языка будет неоднозначным в этом случае).
- [[yii\i18n\Formatter::asSize()|size]] — значение будет отформатировано как количество байт в человеко-понятном формате,
например: `410 kibibytes`.
- [[yii\i18n\Formatter::asShortSize()|shortSize]] — сокращённая версия [[yii\i18n\Formatter::asSize()|size]], например:
`410 KiB`.
Форматирование чисел может быть скорректировано с помощью [[yii\i18n\Formatter::decimalSeparator|дробного разделителя]] и
[[yii\i18n\Formatter::thousandSeparator|тысячного разделителя]], которые были заданы в соответствии с локалью.
Для более сложной конфигурации [[yii\i18n\Formatter::numberFormatterOptions]] и [[yii\i18n\Formatter::numberFormatterTextOptions]]
могут быть использованы для настройки внутренне используемого [класса NumberFormatter](https://secure.php.net/manual/ru/class.numberformatter.php).
Например, чтобы настроить максимальное и минимальное количество знаков после запятой, вы можете настроить свойство
[[yii\i18n\Formatter::numberFormatterOptions]] как в примере ниже:
```php
'numberFormatterOptions' => [
NumberFormatter::MIN_FRACTION_DIGITS => 0,
NumberFormatter::MAX_FRACTION_DIGITS => 2,
]
```
Остальное форматирование
--------------------------------------------------
Кроме форматирование даты, времени и чисел, Yii предоставляет набор других полезных средств форматирования для различных
ситуаций:
- [[yii\i18n\Formatter::asRaw()|raw]] — значение будет отображено как есть, это псевдо-форматирование, которое не даёт
никакого эффекта,
кроме значений `null`, которые будет отформатированы в соответствии с [[yii\i18n\Formatter::nullDisplay|nullDisplay]].
- [[yii\i18n\Formatter::asText()|text]] — значением будет экранированный от HTML текст.
Это формат по умолчанию, используемый в [GridView DataColumn](output-data-widgets.md#data-column).
- [[yii\i18n\Formatter::asNtext()|ntext]] — значением будет экранированный от HTML текст с новыми строками,
сконвертированными в разрывы строк.
- [[yii\i18n\Formatter::asParagraphs()|paragraphs]] — значением будет экранированный от HTML текст с параграфами,
обрамлёнными в `` теги.
- [[yii\i18n\Formatter::asHtml()|html]] — значение будет очищено, используя [[yii\helpers\HtmlPurifier|HtmlPurifier]], с целью предотвратить XSS
атаки. Вы можете задать дополнительные параметры, такие как `['html', ['Attr.AllowedFrameTargets' => ['_blank']]]`.
- [[yii\i18n\Formatter::asEmail()|email]] — значение будет отформатировано как ссылка `mailto`.
- [[yii\i18n\Formatter::asImage()|image]] — значение будет отформатировано как тег картинки.
- [[yii\i18n\Formatter::asUrl()|url]] — значение будет отформатировано как ссылка .
- [[yii\i18n\Formatter::asBoolean()|boolean]] — значение форматируется как логическое. По умолчанию `true` будет
отображено как `Yes` и `false` как `No`, переведенное на язык приложения. Вы можете настроить это через свойство
[[yii\i18n\Formatter::booleanFormat]].
`null` значения
----------------------------------------------
Для значений `null` в PHP класс форматирования будет отображать вместо пустой строки маркер, по умолчанию это
`(not set)`, переведенный на язык приложения. Вы можете настроить свойство [[yii\i18n\Formatter::nullDisplay|nullDisplay]]
для установки собственного маркера. Если вы не хотите обрабатывать `null` значения, то установите свойство
[[yii\i18n\Formatter::nullDisplay|nullDisplay]] в `null`.