PHP Функция для установки правильного окончания слов
Недавно понадобилась такая функция, после поисков выяснилось, что готовых решений не так уж и много.
В итоге Sander подсказал вот такую штуку:
Источник:dle-faq.pro, DLE
В итоге Sander подсказал вот такую штуку:
/**
* Функция для установки правильного окончания слов
* @param int $n - число, для которого будет расчитано окончание
* @param string $words - варианты окончаний для (1 комментарий, 2 комментария, 100 комментариев)
* @return string - слово с правильным окончанием
*/
function wordsSpan($n = 0, $words) {
$words = explode('|', $words);
$n = intval($n);
return $n%10==1&&$n%100!=11?$words[0].$words[1]:($n%10>=2&&$n%10<=4&&($n%100<10||$n%100>=20)?$words[0].$words[2]:$words[0].$words[3]);
}
// Пример работы
for ($total=0; $total < 102; $total++) {
echo 'Всего: '.$total.' '.wordsSpan($total,'комментари|й|я|ев').'<br />';
}
// Вариант с подключением в DLE
// {include file="engine/modules/wordspan.php?n=7&words=комментари|й|я|ев"}
Источник:dle-faq.pro, DLE
Похожие новости
- DataLife Engine v.20.0 Press Release
- Весеннее настроение и двойная выгода: дарим вторую лицензию
- Ajax-отправка форм в админпанели - модуль AdminAjaxForms
- Весенняя акция на лицензии DataLife Engine
- Arne Slot ayaa eedda dusha ka saaray hal qof ka dib guuldarradii Liverpool ka soo gaartay Galatasaray..
- Chelsea oo go’aansatay inay iibiso Liam Delap ka dib markii uu hal gool dhaliyay tan iyo markii uu xagaagii ku biiray.
- Sidee habeenkii naxdinta lahaa ee Kinsky u dhacay ka hor inta aan la badalin daqiiqadii 17aad..
- Luka Modric ayaa soo afjaray wararka xanta ah ee la xiriirinaya inuu ku laabanayo Real Madrid, isagoo ku adkeysanaya inuu….
- Alejandro Garnacho ayaa ka digay in mustaqbalka Chelsea uu noqon karo mid aad u fool xun iyadoo halyeeyga kooxda uu ku..
- Chelsea oo qalbi jabisay Wrexham ka dib markii VAR ay ku guuleysatay….