예약시간 근처가 오면 해당시간의 배경이 노란색
본문
<style>
.makeityellow {
background-color: yellow;
}
</style>
<a href="xxxxx">
<span class="<?php if (만약 2020-09-01 19:22 분에서 현재시간이 +- 10분 차이 면): ?> makeityellow <?php endif ?>">
2020-09-01 19:22
</span>
</a>
예약 웹사이트를 만드는 중입니다.
예약시간 근처가 오면 해당시간의 배경이 노란색이 되게 하고 싶습니다.
질문 #1. 이 코드를 더 간단하게 하는 방법은 없나요? (코드리뷰)
질문 #2. if (만약 2020-09-01 19:22 분에서 현재시간이 +- 10분 차이 면) 이 부분은 어떻게 처리향 하나요?
!-->답변 1
<style>
.makeityellow {
background-color: yellow;
}
.default {
background-color: gray;
}
</style>
<a href="xxxxx">
<span class="<?=(예약시간 ±10분 차이 내)?'makeityellow':'default'?>">
2020-09-01 19:22
</span>
</a>
답변 #1. 완성된 코드가 아니라 더 간단하게 할 방법은 없습니다.
다만 삼항연산자를 이용해 코드를 짧게 표현할 수는 있습니다.
+ Expressions
- https://www.php.net/manual/en/language.expressions.php
- http://docs.php.net/manual/kr/language.expressions.php
답변 #2. 시간 관련 함수와 절대값을 이용하면 간편합니다.
+ Date and Time
- https://www.php.net/manual/en/book.datetime.php
- http://docs.php.net/manual/kr/book.datetime.php
+ abs()
- https://www.php.net/manual/en/function.abs
- http://docs.php.net/manual/kr/function.abs.php
편의상 Timestamp로, 현재-대상<=600 의 경우가 ±10분 안쪽입니다.
<?=abs(time()-strtotime('2020-09-01 19:22:00'))<=600?'±10분내':'그외'?>
* time() 대신 $_SERVER['REQUEST_TIME'] 변수 사용해도 무방
!-->!-->
답변을 작성하시기 전에 로그인 해주세요.