Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: как проверить попадание даты в интервал?
Форумы портала PHP.SU » » Вопросы новичков » как проверить попадание даты в интервал?

Страниц (1): [1]
 

1. MBmusic - 03 Сентября, 2013 - 09:14:50 - перейти к сообщению
ну например есть два массивы:

$a1:
PHP:
скопировать код в буфер обмена
  1.  
  2. (
  3.     [value] => 00:00
  4. )
  5.  
  6. (
  7.     [value] => 01:00
  8. )
  9.  


и есть например время:

$a2:


как проверить попадает ли время массива $a2 в промежутки времени массива $a1, и если попадает то вывести что то.........тут походу нужно как то через DateInterval, но не знаю как правильно написать всё....
2. avtor.fox - 03 Сентября, 2013 - 09:25:27 - перейти к сообщению
MBmusic пишет:
DateInterval

Не всё хорошо то, что хорошо)))

PHP:
скопировать код в буфер обмена
  1. $rgTimes = array(
  2.         '0:00', '1:00'
  3. );
  4. $fTime = '1:30';
  5. if(strtotime($rgTimes[0]) <= strtotime($fTime) && strtotime($fTime) <= strtotime($rgTimes[1])){
  6.         echo 'ПАПАЛ!';
  7. }
  8.  
3. DeepVarvar - 03 Сентября, 2013 - 09:39:17 - перейти к сообщению
Спойлер (Отобразить)
4. MBmusic - 03 Сентября, 2013 - 10:54:18 - перейти к сообщению
еще вопрос......а вот если у нас время хранятся как обьекты, и нам нужно узнать попадает ли какоето время в заданый игтервал......ну вот допустим есть два объекта:

Объект $a:
PHP:
скопировать код в буфер обмена
  1.  
  2. DateTime Object
  3. (
  4.     [date] => 2013-09-02 00:00:00
  5. )
  6.  


Объект $b:
PHP:
скопировать код в буфер обмена
  1.  
  2. DatePeriod Object
  3. (
  4.     [start] => DateTime Object
  5.         (
  6.             [date] => 2013-09-02 01:00:00
  7.         )
  8.  
  9.     [end] => DateTime Object
  10.         (
  11.             [date] => 2013-09-02 12:00:00
  12.         )
  13. )
  14.  


как узнать, попадает ли время объекта $а в промежуток времени $b?
5. avtor.fox - 03 Сентября, 2013 - 11:13:00 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $rgTimes = array(
  2.         new DateTime('1:00'), new DateTime('2:00')
  3. );
  4. $fTime = new DateTime('1:30');
  5. $Results = $fTime > $rgTimes[0] && $fTime < $rgTimes[1] ? true : false;
  6. var_dump($Results);
6. MBmusic - 03 Сентября, 2013 - 11:19:10 - перейти к сообщению
avtor.fox а как мне использовать мои объекты? ну например если я хочу использовать Объект $a, и напишу $a['date'], то выдаст ошибку......как добратся до свойства объекта?
(Добавление)
если напишу так $a->date то ничего не выведет...
7. avtor.fox - 03 Сентября, 2013 - 11:51:36 - перейти к сообщению
MBmusic, код покажи, у меня логика сломалась, голова другим забита)
8. MBmusic - 03 Сентября, 2013 - 12:46:13 - перейти к сообщению
уже разобрался! спасибо avtor.fox
9. askaev - 31 Октября, 2013 - 09:01:11 - перейти к сообщению
Такой вопрос.
В БД хранятся записи в формате date\time (30.10.2013 23:10:00).
Необходимо выяснить, попадает ли дата\время у выбранного id в определённые интервалы времени, к примеру между 00:15:00 и 04:15:00 текущих суток, между 04:15:00 и 12:15:00 текущих суток, между 12:15:00 и 16:15:00 текущих суток, между 16:15:00 текущих суток и 00:15:00 следующих суток (или между 16:15:00 предыдущих суток и 00:15:00 текущих суток).

 

Powered by ExBB FM 1.0 RC1