Обычно я использую PHP только из фреймворков, которые реализуют свой собственный способ решения этой проблемы, но я думаю, что ответ на ваш вопрос может быть gettext .
Gettext - библиотека интернационализации и локализации GNU (i18n). Он был разработан как инструмент для i18n и l10n (интернационализация и локализация), но - именно из-за этого у него множество функций для работы с множественными формами, учитывая, что другие языки могут иметь гораздо более сложные способы формирования множественного числа, чем английский.
PHP влияет на gettext , так что это может быть хорошей отправной точкой для изучения. Наконец, вы можете захотеть взглянуть на этот другой ответ , предлагая альтернативный способ сделать это.
РЕДАКТИРОВАТЬ: Я думаю, ngettext()
может быть функция, которую вы ищете.