Доступ к готовым решениям

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Знак зодиака по дате рождения

Статус
В этой теме нельзя размещать новые ответы.

Mathian

Мастер
Всем Хай!
Ниже приведён пример, как узнать знак зодиака по дате рождения.​
PHP:
<?php
	function getZodiacalSign($month, $day)
	{
		$signs = array("Козерог","Водолей","Рыбы","Овен","Телец","Близнецы","Рак","Лев","Девы","Весы","Скорпион","Стрелец");
		$signsstart = array(1=>21,2=>20,3=>20,4=>20,5=>20,6=>20,7=>21,8=>22,9=>23,10=>23,11=>23,12=>23);
		return $day < $signsstart[$month +1]? $signs[$month -1]: $signs[$month %12];
	}
	echo getZodiacalSign(7,11);
?>
В качестве параметров функция принимает месяц и число рождения, то есть те параметры, которые необходимы и достаточны для определения знака зодиака. Следующей строкой мы перечисляем все знаки зодиака и записываем их в массив.

В переменную signsstart мы записываем числа, соответствующие последнему дню предыдущего знака. Например, стрельцы заканчиваются 21-го числа (козероги начинаются 22-го числа), поэтому именно число 21 и идёт первым элементом. Козероги заканчиваются 20-го числа, соответственно, число 20 идёт вторым элементом и так далее.

Наконец, последней строкой мы определяем, попадает ли день рождения в следующий знак зодиака соответствующего месяца, если да, то возвращается знак под номером, соответствующим остатку при делении месяца на 12, а если нет, то возвращается предыдущий знак зодиака. Не забываем, что нумерация знаков идёт не с 1, а с 0!

В качестве тестового примера было выбрано 11 июля, а результатом работы данного скрипта была строка: "Рак", что соответствует действительности.
Автор: Неизвестно
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу