Показать сообщение отдельно
  #3 (permalink)  
Старый 08.11.2017, 09:44
Профессор
Отправить личное сообщение для Nexus Посмотреть профиль Найти все сообщения от Nexus
 
Регистрация: 04.12.2012
Сообщений: 3,797

По-моему букаф много.
<?php
	$bd=preg_replace('#\d{4}#',$cur_year=date('Y'),'11.12.1994');
	if(strtotime('today')>strtotime($bd))
	    $bd=str_replace($cur_year,1+$cur_year,$bd);
	    
	$Interval=(new DateTime())->diff(new DateTime($bd));
	$months=$Interval->format('%m');
	$days=$Interval->format('%d');
	
	echo 'Осталось ',
	    $months>0?$months.' '.plural($months,array('месяц','месяца','месяцев')).' ':null,
	    $days>0?$days.' '.plural($days,array('день','дня','дней')):null;
	
	
	
	
    //© https://gist.github.com/fomigo/2382775
    function plural($n,$forms){
        return $n%10==1&&$n%100!=11?$forms[0]:($n%10>=2&&$n%10<=4&&($n%100<10||$n%100>=20)?$forms[1]:$forms[2]);
    }

http://sandbox.onlinephpfunctions.co...c8f529f439e3f6

Последний раз редактировалось Nexus, 08.11.2017 в 12:19.
Ответить с цитированием