- Возраст | PHP и JavaScript
- Правильное склонение по-русски: «год», «года», «лет» в JavaScript
- Сравнение дат в формате «год месяц день»
- Вычисление возраста по дате рождения
- Подсчёт разницы лет
- Определить количество дней между двумя датами
- Как посчитать разницу между датами в годах на PHP
- «Год», «года», «лет» в зависимости от числа
- Рассчитать возраст на PHP
- Возраст со словом «год», «года» или «лет»
- 11 комментариев:
- Как определить возраст (лет,года)
- Решение
- Склонение слов после числительных в PHP
- Единицы измерения товаров
- Экономические единицы
- Масса
- Длина
- Объем
- Площадь
- Дата и время
- Технические единицы
- Тексты
- Как правильно склонить год в php?
- Войдите, чтобы написать ответ
- Как удалить сессию при закрытии вкладки/окна браузера?
Возраст | PHP и JavaScript
Фраза «мы работаем с 1880 года» звучит менее впечатляюще, чем «мы работаем более ». Можно, конечно, из года в год 1 января менять цифру «», а можно написать короткий скрипт, который сам рассчитает правильное количество лет.
Правильное склонение по-русски: «год», «года», «лет» в JavaScript
Сравнение дат в формате «год месяц день»
Вычисление возраста по дате рождения
Подсчёт разницы лет
Определить количество дней между двумя датами
Как посчитать разницу между датами в годах на PHP
«Год», «года», «лет» в зависимости от числа
echo YearTextArg(date('Y')-1880); ?>
Рассчитать возраст на PHP
29/02/1880') ->diff(new DateTime('now')) ->y; echo $age; ?>
Возраст со словом «год», «года» или «лет»
29/02/1880') ->diff(new DateTime('now')) ->y; function YearTextArg($year) < $m = substr($year,-1,1); $l = substr($year,-2,2); return $year. ' ' .((($m==1)&&($l!=11))?'год':((($m==2)&&($l!=12)||($m==3)&&($l!=13)||($m==4)&&($l!=14))?'года':'лет')); >echo YearTextArg($age); ?>
11 комментариев:
Анонимный Спасибо, отличные скрипты)) NMitra Благодарю за отзыв! Александр Шаповал Вопрос по «Возраст со словом «год», «года» или «лет»» — последний пример: я, использую этот пример для вычисления возраст юзера в CMS Joomla. Как в строку «RETURN», вместо русских: ‘год’, ‘года’ и ‘лет’, вставить языковую переменную Joomla. Языковая переменная, выглядит вот так:
Заранее благодарю за ответ Александр Шаповал Не пропустило языковую переменную. Дублирую снова: языковая переменная, выглядит вот так: echo JText::_( ‘COM_CCK_LANG_VAR’ ); NMitra А зачем? Тогда нужно три переменных.
Для того, чтобы написать код в комментариях, пожалуйста используйте http://shpargalkablog.ru/2010/12/napisat-kod-tekstom.html Александр Шаповал Ок. Понял.
Так как все же ПРАВИЛЬНО вставить эту переменную вместо ‘год’ — эту: , вместо ‘года’ — эту: и вместо ‘лет’ — эту: ? NMitra Не, вместо ‘год’ пишите сразу JText::_( ‘COM_CCK_LANG_VAR1’ )
Я сама php знаю поскольку постольку, просто он похож на JS Александр Шаповал NMitra, спасибо! Заработало!
Ну и соответственно, нужно задать значения языковым переменным в lang-LANG.overide.ini Vegan Boom Спасибо! В очередной раз нашла в этом блоге нужную информацию.
А подскажите, пожалуйста ещё и это. Как изменить этот код в JavaScript, если хочу, чтобы отражалось следующее:
Возраст автора на момент написания статьи: . лет, . месяцев.
Vegan Boom Дополнение к предыдущему моему комментарию.
Важно, чтобы я могла это вставить в шаблон сообщений. И у каждого конкретного поста ничего бы не нужно было исправлять. Один универсальный код для всех постов. NMitra Дополнила статью примером
Источник
Как определить возраст (лет,года)
Дано натуральное число n (n
Вывод возраста с префиксом (год, года, лет)
Привет! Подскажите как лучше решить такую проблему есть переменная $skolko_let она возвращает.
Определить возраст человека год, года, лет
Определить возраст человека год, года, лет.
Известен возраст (в годах в виде 14,5 лет и т. д.) каждого ученика класса. Определить средний возраст учеников
Известен возраст (в годах в виде 14,5 лет и т. д.) каждого ученика класса. Определить средний.
Сообщение было отмечено Enotishe как решение
Решение
$n = 100; $arr = array('лет','год','года'); if(substr($n,-2)20) $res = substr($n,-2); else $res = substr($n,-1); if($res==1) echo "Этому человеку $n $arr[1]"; elseif($res==0 or $res>4) echo "Этому человеку $n $arr[0]"; else echo "Этому человеку $n$arr[2]";
function choice( $age ) $rest = $age % 10; return $rest > 1 && $rest 5 ? 'года' : (!$rest echo 'Вите 1 ' . choice(1); echo '
Виктории 23 ' . choice(23); echo '
Виктору 45 ' . choice(45);
Вывести на экран сообщение вида: «Возраст человека n лет (год, года)»
Дано натуральное число n, определяющее возраст человека в годах. Для этого числа дать наименование.
Вывести возраст пользователя, используя правильное слово год/года/лет
Вводим число от 1 до 100. В ответ выводится строка типа «Вам 76 лет». Или «Вам 3 года». То есть, в.
Ввести возраст человека (от 1 до 150 лет) и вывести его вместе с последующим словом «год», «года» или «лет»
Здравствуйте! Помогите решить задачу! Ввести возраст человека (от 1 до 150 лет) и вывести его.
Запросить возраст человека и напечатать введенное число с подходящим словом: лет, год, года
Составить программу, которая запрашивает возраст человека и печатает введенное число с подходящим.
Источник
Склонение слов после числительных в PHP
В интернет магазинах, CRM и других сервисах для «правильности» есть необходимость склонять существительных после чисел или как это еще называют – плюрализация, например: 1 товар, 2 товара, 5 товаров.
Реализовать такой вывод можно с помощью функции:
/** * Склонение существительных после числительных. * * @param string $value Значение * @param array $words Массив вариантов, например: array('товар', 'товара', 'товаров') * @param bool $show Включает значение $value в результирующею строку * @return string */ function num_word($value, $words, $show = true) < $num = $value % 100; if ($num >19) < $num = $num % 10; >$out = ($show) ? $value . ' ' : ''; switch ($num) < case 1: $out .= $words[0]; break; case 2: case 3: case 4: $out .= $words[1]; break; default: $out .= $words[2]; break; >return $out; >
Параметр $words – массив, в котором:
- первый элемент задает текст для единичных значений,
- второй для значений с 2-х до 4-х,
- третий для всех остальных.
echo num_word(1, array('рубль', 'рубля', 'рублей')) . '
'; echo num_word(3, array('рубль', 'рубля', 'рублей')) . '
'; echo num_word(9, array('рубль', 'рубля', 'рублей')) . '
';
Единицы измерения товаров
echo num_word($value, array('товар', 'товара', 'товаров'); echo num_word($value, array('штука', 'штуки', 'штук'); echo num_word($value, array('упаковка', 'упаковки', 'упаковок'); echo num_word($value, array('коробка', 'коробки', 'коробок'); echo num_word($value, array('пачка', 'пачки', 'пачек'); echo num_word($value, array('ящик', 'ящика', 'ящиков'); echo num_word($value, array('комплект', 'комплекта', 'комплектов'); echo num_word($value, array('экземпляр', 'экземпляра', 'экземпляров'); echo num_word($value, array('рулон', 'рулона', 'рулонов'); echo num_word($value, array('лист', 'листа', 'листов'); echo num_word($value, array('погонный метр', 'погонных метра', 'погонных метров'));
Экономические единицы
echo num_word($value, array('процент', 'процента', 'процентов')); echo num_word($value, array('рубль', 'рубля', 'рублей')); echo num_word($value, array('доллар', 'доллара', 'долларов')); echo num_word($value, array('условная единица', 'условные единицы', 'условных единиц'));
Масса
echo num_word($value, array('тонна', 'тонны', 'тонн')); echo num_word($value, array('центнер', 'центнера', 'центнеров')); echo num_word($value, array('килограмм', 'килограмма', 'килограммов')); echo num_word($value, array('грамм', 'грамма', 'граммов')); echo num_word($value, array('миллиграмм', 'миллиграмма', 'миллиграммов'));
Длина
echo num_word($value, array('километр', 'километра', 'километров')); echo num_word($value, array('метр', 'метра', 'метров')); echo num_word($value, array('сантиметр', 'сантиметра', 'сантиметров')); echo num_word($value, array('миллиметр', 'миллиметра', 'миллиметров'));
Объем
echo num_word($value, array('куб', 'куба', 'кубов')); echo num_word($value, array('литр', 'литра', 'литров')); echo num_word($value, array('миллилитр', 'миллилитра', 'миллилитров'));
Площадь
echo num_word($value, array('гектар', 'гектара', 'гектаров')); echo num_word($value, array('акр', 'акра', 'акров')); echo num_word($value, array('сотка', 'сотки', 'соток')); echo num_word($value, array('квадратный метр', 'квадратных метра', 'квадратных метров'));
Дата и время
echo num_word($value, array('год', 'года', 'лет')); echo num_word($value, array('месяц', 'месяца', 'месяцев')); echo num_word($value, array('день', 'дня', 'дней')); echo num_word($value, array('сутки', 'суток', 'суток')); echo num_word($value, array('час', 'часа', 'часов')); echo num_word($value, array('минута', 'минуты', 'минут')); echo num_word($value, array('секунда', 'секунды', 'секунд')); echo num_word($value, array('микросекунда', 'микросекунды', 'микросекунд')); echo num_word($value, array('миллисекунда', 'миллисекунды', 'миллисекунд'));
Технические единицы
echo num_word($value, array('оборот в минуту', 'оборотов в минуту', 'оборотов в минуту')); echo num_word($value, array('километр в час', 'километра в час', 'километров в час')); echo num_word($value, array('лошадиная сила', 'лошадиные силы', 'лошадиных сил')); echo num_word($value, array('градус', 'градуса', 'градусов')); echo num_word($value, array('калория', 'калории', 'калорий'));
Тексты
echo num_word($value, array('параграф', 'параграфа', 'параграфов')); echo num_word($value, array('предложение', 'предложения', 'предложений')); echo num_word($value, array('слово', 'слова', 'слов')); echo num_word($value, array('знак', 'знака', 'знаков')); echo num_word($value, array('символ', 'символа', 'символов'));
Источник
Как правильно склонить год в php?
function decline($num, $forms) < return $num%10==1&&$num%100!=11?$forms[0]:($num%10>=2&&$num%10<=4&&($num%100<10||$num%100>=20)?$forms[1]:$forms[2]); > echo $years . ' ' . decline($years, ['год', 'года', 'лет']); // 3 года
function decline($num, $forms) < return $num%10==1&&$num%100!=11?$forms[0]:($num%10>=2&&$num%10<=4&&($num%100<10||$num%100>=20)?$forms[1]:$forms[2]); > echo $years . ' ' . decline($years, ['год', 'года', 'лет']); // 3 года
Kozlov, да ладно. Придут Сишники и начнут придираться мол $num%10 и $num%100 повторяем несколько раз, если дадим большие числа то поплывет производительность, придется наш one-liner разбавить временными переменными для хранения результата. Если хочешь, сам выложи и сделай решением, мне все равно, пользуйся на здоровье )))
Войдите, чтобы написать ответ
Как удалить сессию при закрытии вкладки/окна браузера?
Источник