Окончание отображения слова зависит от пола (проблема польского языка), PHP - PullRequest
0 голосов
/ 23 октября 2018

Эта проблема может не возникать на английском языке, но на польском языке это действительно больно.Я предполагаю, что мой вопрос в основном предназначен для польских пользователей, поскольку у них, возможно, уже есть достойное решение.

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

Мужской: на свадьбе и в семье, в том числе на свадьбе.

Женский: Ona poszła i nie znalazła, więc klasnęła w dłonie i nagle ją coś pożarło.

Мне удалось найти такое решение: каждый раз в начале сценария я подготавливаю переменную, которая выглядит так:$ verb [$ окончание] [$ sex] = 'что-то';

//$ending does contain - for my convenience - letters that says what kind of eding am I changing, instead of numeric options
//Examples:
$verb['-a']['male'] = '';
$verb['-a']['female'] = 'a';
//works for On=>Ona, znalazł=>znalazła

$verb['al-ela']['male'] = 'ął';
$verb['al-ela']['female'] = 'ęła';
//works for klasnął=>klasnęła

Теперь, если я добавлю факт, что в 99% случаев я не знаю с самого начала, с каким полом я имею делос, моя переменная начала выглядит довольно страшно: $ verb ['al-ela'] [$ _ SESSION ['user'. $ id] ['sex']].Поэтому мой конечный текст выглядит так:

O '. $ Verb [' - a '] [$ _ SESSION [' user '. $ Id] [' sex ']].'posz '. $ глагол [ 'EDL-л'] [$ _ SESSION [ 'пользователь'. $ ID] [ 'секс']].i nie znalazł '. $ verb [' - a '] [$ _ SESSION [' user '. $ id] [' sex ']].', więc klasn '. $ verb [' al-ela '] [$ _ SESSION ['пользователь'. $ ID] [ 'секс']] «.w dłonie i nagle '. $ verb [' go-ja '] [$ _ SESSION [' user '. $ id] [' sex ']].'coś pożarło.

Да, конечно - это довольно экстремальный пример, но иногда текст действительно выглядит так, и это неизбежно.

Короче говоря, вот моивопросы:

  1. Я делаю это неправильно?Есть ли лучшее / более быстрое / более удобное решение для такого рода проблем?
  2. Есть ли скрипт, который может обнаруживать / изменять окончания для меня, не разрушая остальную часть текста?
  3. Я изо всех сил пыталсянайти полный список возможных вариантов окончания на польском языке (как для единственного, так и для множественного числа), поэтому я создаю свой собственный список, поскольку я нахожу новые варианты.Возможно, у кого-то есть такой список => это может помочь мне создать сценарий из моего второго вопроса.

Заранее большое спасибо, с наилучшими пожеланиями!

...