if интервал между 22:12 и 20:01

seosniks
На сайте с 13.08.2007
Offline
389
722

Добрый день, ситуация такая, необходимо выбрать нужное значение если текущая дата попадает в интервал между

22:12 и 20:01

$ro  ="23:12";

if( $ro >=('22:12') || $ro<= ('20:01')){$zod='Козерог'; }
if( $ro >=('21:01') || $ro <= ('18:02')){$zod='Водолей'; }

В общем надо как наступит 22:12 вывести нужное значение, и выводить пока не пройдет 20:01

Можно конечно использовать timestamp но Что я не так делаю?

Joker-jar
На сайте с 26.08.2010
Offline
154
#1

22:12 и 20:01 это, как я понимаю, число и месяц?

F
На сайте с 11.08.2010
Offline
27
#2

В таком случае сравнивайте отдельно число и месяц.

TO
На сайте с 21.09.2007
Offline
170
#3


$this_date = '12.01.'.date('Y',time());
if(strtotime($this_date) < strtotime('20.01.'.date('Y',time())) || strtotime($this_date) > strtotime('22.12.'.date('Y',time()))){
//do it
}
Joker-jar
На сайте с 26.08.2010
Offline
154
#4

t_o_x_a, там переход года, где-то нужно либо отнять, либо прибавить единицу

seosniks
На сайте с 13.08.2007
Offline
389
#5
Joker-jar, как я понимаю, число и месяц?

Да именно так, число и месяц

Мне год не нужен, только день и месяц.

Тут сложность в том что нужно именно как то сравнивать день и месяц.

Овен

20.03-19.04

Телец

20.04-20.05

Близнецы

21.05-20.06

Рак

21.06-22.07

Лев

23.07-22.08

Дева

23.08-22.09

Весы

23.09-22.10

Скорпион

23.10-21.11

Стрелец

22.11-21.12

Козерог

22.12-20.01

Водолей

21.01-18.02

Рыбы

19.02-19.03

Joker-jar
На сайте с 26.08.2010
Offline
154
#6

seosniks, а дата откуда берется? текущая?

в сети есть алгоритмы определения знака зодиака

skAmZ
На сайте с 04.09.2009
Offline
122
#7

тут был бред не по теме :)

Joker-jar
На сайте с 26.08.2010
Offline
154
#8

Мой вариант:

function get_zodiac($date)

{
$zodiac = array('Козерог', 'Водолей', 'Рыбы', 'Овен', 'Телец', 'Близнецы', 'Рак', 'Лев', 'Дева', 'Весы', 'Скорпион', 'Стрелец', 'Козерог');
$zodiac_dates = array(101, 121, 219, 320, 420, 521, 621, 723, 823, 923, 1023, 1122, 1222);
$index = intval( date('nd', $date) );
$result = '';
for ( $i == 0; $i < count($zodiac); $i++ ) if ( $zodiac_dates[$i] > $index ) return $zodiac[$i-1];
return end($zodiac);
}

echo get_zodiac( time() );

Только даты перепроверить надо

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий