Pull to refresh

Intl к нам приходит!

Reading time 4 min
Views 28K
JavaScript *
Sandbox
datemap Нет, не Intel. Intl — JavaScript объект, содержащий в себе функции форматирования чисел, дат и сравнения строк. Приходит, потому что 29 апреля Firefox, последний из популярных браузеров, не поддерживающий Intl, обновляется до 29 версии, в которой поддержка интернационализации будет включена.

Разумеется, тем кому приходится волею судеб поддерживать старые браузеры, опять не повезло. Но прогресс не стоит на месте и, начиная с конца апреля, счастливчикам можно будет потихоньку внедрять Intl в свои проекты.

Что же даёт Intl JS программисту?


А очень много
Total votes 76: ↑73 and ↓3 +70
Comments 28

Проблемы даты и времени в JS

Reading time 3 min
Views 84K
JavaScript *


Редкому программисту случается избежать работы с датой и временем. Вообще, дата/время — базовое понятие и в основной массе языков существуют встроенные механизмы работы с этим типом данных. Казалось бы, JS не исключение, есть встроенный тип Date, есть куча функций в прототипе, однако…
Читать дальше →
Total votes 52: ↑38 and ↓14 +24
Comments 55

Долгая история про локализацию даты без года в PHP

Reading time 12 min
Views 14K
PHP *
Давайте начнём с простой задачки — вывести локализованную дату: там должен быть день, полное название месяца на языке локали и полный год. В наше время это действительно очень просто. В PHP есть своё i18n-расширение intl, которое входит в ядро с версии 5.3. И в этом intl есть класс IntlDateFormatter, у которого в свою очередь предопределено несколько форматов. Используем его LONG формат.

<?php

foreach (['en_US', 'ru_RU', 'es_ES', 'fa_IR'] as $locale) {
    $formatter = new IntlDateFormatter(
        $locale, 
        IntlDateFormatter::LONG, 
        IntlDateFormatter::NONE, 
        'Europe/Moscow'
    );
    echo $formatter->format(1455111783), PHP_EOL;
}

Результат:

February 10, 2016
10 февраля 2016 г.
10 de febrero de 2016
۱۰ ﻑﻭﺭیﻩٔ ۲۰۱۶ ﻡ. // вот тут вообще-то RTL-текст, но я хз как это правильно оформить

Пока неплохо. А теперь давайте слегка изменим условия: «вывести локализованную дату: там должен быть день и полное название месяца на языке локали». То есть, мы не хотим отображать год.
Казалось бы, ерунда. Но есть нюанс...
Total votes 37: ↑37 and ↓0 +37
Comments 40

Обновляем расширение Intl в PHP 7 на Linux Ubuntu 16.04

Reading time 3 min
Views 24K
PHP *Language localisation *Development for Linux *
Программисты делятся на два типа: консерваторы, для которых переход на новую версию равносилен перелёту на другую планету (если читаешь это из Windows XP — поздравляю, это ты); и Викторы Цои, чьи сердца и глаза требуют перемен, и обновляют всё и вся при первой возможности. Если ты второго типа, и у тебя уже стоит последняя версия PHP на последней LTS версии Ubuntu, но покоя не даёт то, что расширение Intl использует устаревшую версию библиотеки ICU, или тебе просто понравились картинки из «Аватара» — добро пожаловать под кат! (Картинок больше не будет.)

Аватар

Читать дальше →
Total votes 16: ↑16 and ↓0 +16
Comments 11

Luxon — новая библиотека для работы с датами от команды Moment.js

Reading time 8 min
Views 24K
Website development *JavaScript *


Казалось бы, зачем нужна еще одна библиотека для работы с датами и временем когда есть всем известная библиотека Moment?! Тем интереснее, что альтернатива предложена самой командой Moment.
Читать дальше →
Total votes 16: ↑16 and ↓0 +16
Comments 18

React Intl: интернационализация React-приложений

Reading time 14 min
Views 16K
Маклауд corporate blog Website development *JavaScript *Programming *
Translation

Библиотека React Intl предоставляет механизм для перевода текста на другие языки.


В данном "туториале" мы используем названную библиотеку для реализации интернационализации в проекте, написанном на React. Мы создадим простое приложение, позволяющее пользователю выбирать язык приложения.


Мы также реализуем возможность сохранения выбранного языка в локальном хранилище браузера для обеспечения его доступности после перезагрузки страницы и последующих визитах пользователя.

Читать дальше →
Total votes 20: ↑19 and ↓1 +18
Comments 1

JavaScript: немного об интернационализации и локализации веб-приложений

Reading time 18 min
Views 7.1K
Timeweb Cloud corporate blog Website development *JavaScript *Programming *


Привет, друзья!


В данной статье я хочу рассказать вам об Internationalization API — интерфейсе, предоставляемом браузером, позволяющем выполнять интернационализацию и локализацию веб-приложений.


Статья состоит из 2 частей: теоретической и практической. В теоретической части мы кратко рассмотрим возможности, предоставляемые Internationalization API. В практической — создадим пример локализованного приложения с помощью разработанной мной утилиты.

Читать дальше →
Total votes 12: ↑10 and ↓2 +8
Comments 2

JavaScript: работа с датой и временем с помощью Temporal

Reading time 11 min
Views 8.7K
Timeweb Cloud corporate blog Website development *JavaScript *


Привет, друзья!


В этой статье я хочу рассказать вам о Temporal, новом API для работы с датой и временем в JS.



Источником вдохновения для меня послужила эта замечательная статья.


Обратите внимание: предложение находится на 3 стадии рассмотрения и может подвергнуться некоторым изменениям, так что воздержитесь от его использования в продакшне до официального утверждения (вероятно, это произойдет где-то в конце текущего года).


Если вам это интересно, прошу под кат.

Читать дальше →
Total votes 10: ↑10 and ↓0 +10
Comments 11