2017 © Pedro PelΓ‘ez
 

symfony-bundle ru-strings-bundle

Π‘ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΏΠ°Π΄Π΅ΠΆΠ°ΠΌ ΠΈ сопряТСниС с числом

image

it-blaster/ru-strings-bundle

Π‘ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΏΠ°Π΄Π΅ΠΆΠ°ΠΌ ΠΈ сопряТСниС с числом

  • Friday, February 3, 2017
  • by etfostra
  • Repository
  • 10 Watchers
  • 0 Stars
  • 5,485 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 1 Forks
  • 0 Open issues
  • 1 Versions
  • 12 % Grown

The README.md

ru-strings-bundle

Π‘ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΏΠ°Π΄Π΅ΠΆΠ°ΠΌ ΠΈ сопряТСниС с числом Π² twig + сСрвис для Symfony2. Для ΠΊΠ΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Redis., (*1)

ΠŸΡ€ΠΈΠΌΠ΅Ρ€

``` twig {% set auto_count = 223 %} {% set surface = 'Π±Π΅Π»Ρ‹ΠΉ снСг' %} ΠŸΡ€ΠΎΠ΅Ρ…Π°Π»ΠΈ {{ auto_count }} {{ plural(auto_count, 'Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ', 'Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ', 'автомобиля') }} ΠΏΠΎ {{ surface | inflect('datv') }}, (*2)

{# ΠŸΡ€ΠΎΠ΅Ρ…Π°Π»ΠΈ 223 автомобиля ΠΏΠΎ Π±Π΅Π»ΠΎΠΌΡƒ снСгу #}, (*3)


## Установка ``` bash composer require it-blaster/ru-strings-bundle

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² AppKernel.php ``` php <?php // app/AppKernel.php public function registerBundles() { $bundles = array( // ... new Etfostra\RuStringsBundle\EtfostraRuStringsBundle(), ); }, (*4)


## Настройка ДоступныС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π² `config.yml`: ``` yaml etfostra_ru_strings: redis_cache_ttl: 2592000 #ВрСмя ΠΆΠΈΠ·Π½ΠΈ кСша Π² сСкундах pyphrasy_api_url: https://pyphrasy.herokuapp.com/inflect #API URL

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ использования

Π‘ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΏΠ°Π΄Π΅ΠΆΠ°ΠΌ

``` php $inflector = $this->get('ru_strings.case');, (*5)

$inflector->inflect('Π±Π΅Π»Ρ‹ΠΉ снСг', 'gent'); //Π±Π΅Π»ΠΎΠ³ΠΎ снСга $inflector->inflect('Π±Π΅Π»Ρ‹ΠΉ снСг', 'datv'); //Π±Π΅Π»ΠΎΠΌΡƒ снСгу $inflector->inflect('Π±Π΅Π»Ρ‹ΠΉ снСг', 'accs'); //Π±Π΅Π»Ρ‹ΠΉ снСг $inflector->inflect('Π±Π΅Π»Ρ‹ΠΉ снСг', 'ablt'); //Π±Π΅Π»Ρ‹ΠΌ снСгом $inflector->inflect('Π±Π΅Π»Ρ‹ΠΉ снСг', 'loct'); //Π±Π΅Π»ΠΎΠΌ снСгС $inflector->inflect('Π±Π΅Π»Ρ‹ΠΉ снСг', 'voct'); //Π±Π΅Π»Ρ‹ΠΉ снСг, (*6)


### Π‘ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΏΠ°Π΄Π΅ΠΆΠ°ΠΌ Π² Twig ``` twig {{ 'Π±Π΅Π»Ρ‹ΠΉ снСг' | inflect('gent') }} {# Π±Π΅Π»ΠΎΠ³ΠΎ снСга #} {{ 'Π±Π΅Π»Ρ‹ΠΉ снСг' | inflect('datv') }} {# Π±Π΅Π»ΠΎΠΌΡƒ снСгу #} {{ 'Π±Π΅Π»Ρ‹ΠΉ снСг' | inflect('accs') }} {# Π±Π΅Π»Ρ‹ΠΉ снСг #} {{ 'Π±Π΅Π»Ρ‹ΠΉ снСг' | inflect('ablt') }} {# Π±Π΅Π»Ρ‹ΠΌ снСгом #} {{ 'Π±Π΅Π»Ρ‹ΠΉ снСг' | inflect('loct') }} {# Π±Π΅Π»ΠΎΠΌ снСгС #} {{ 'Π±Π΅Π»Ρ‹ΠΉ снСг' | inflect('voct') }} {# Π±Π΅Π»Ρ‹ΠΉ снСг #}

ΠŸΠΎΠ»Π½Ρ‹ΠΉ список ΠΎΠΏΡ†ΠΈΠΉ склонСния http://opencorpora.org/dict.php?act=gram, (*7)

БогласованиС с числом

``` php $pluralizer = $this->get('ru_strings.plural');, (*8)

$pluralizer->plural(101, 'Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ', 'Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ', 'автомобиля'); //Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ $pluralizer->plural(102, 'Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ', 'Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ', 'автомобиля'); //автомобиля $pluralizer->plural(100, 'Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ', 'Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ', 'автомобиля'); //Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ, (*9)


### БогласованиС с числом Π² Twig ``` twig {{ plural(101, 'Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ', 'Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ', 'автомобиля') }} {# Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ #} {{ plural(102, 'Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ', 'Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ', 'автомобиля') }} {# автомобиля #} {{ plural(100, 'Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ', 'Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ', 'автомобиля') }} {# Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ΠΉ #}

Бписок Ρ‚Π΅Ρ€Π½Π°Ρ€Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠ² для Π΄Ρ€ΡƒΠ³ΠΈΡ… языков http://www.gnu.org/software/gettext/manual/html_mono/gettext.html#Plural-forms, (*10)

ΠœΠ΅Ρ‚ΠΎΠ΄ plural Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΊΠ΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅., (*11)

The Versions

03/02 2017

dev-master

9999999-dev https://github.com/it-blaster/ru-strings-bundle

Π‘ΠΊΠ»ΠΎΠ½Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΠΏΠ°Π΄Π΅ΠΆΠ°ΠΌ ΠΈ сопряТСниС с числом

  Sources   Download

MIT

The Requires

 

twig symfony russian