2017-11-30 14 views
0

나는 이벤트 기반 웹 사이트에서 일하고있다. 사용자는 일년 중 여러 이벤트를 만들 수 있으며 여기에서 양식이 어떻게 작동하는지 알려줍니다.매월 첫째, 둘째, 셋째, 넷째 월요일을 얻는 방법?

우리는 다음과 같은 옵션을 하나 개 선택 상자가 있습니다

  • 첫 번째
  • 두 번째
  • 세 번째
  • 이름을 가진 네 번째

그리고 또 다른 선택 상자 주중 일.

예를 들어 1 년 (또는 그 이상) 동안 매월 "매월" "매월"마다 이벤트를 반복하도록 선택할 수 있습니다.

이제 PHP로 매주 두 번째 월요일의 날짜를 얻는 방법을 찾고 있습니다.

나는 내가 원하는 것을 얻을 수있게 해주는이 코드를 가지고있다. 그러나 루프에서 사용하는 좋은 방법에 대해서는 확신 할 수 없다.

echo date("j, d-M-Y", strtotime("second monday 2017-11")); 

& 월 문자열을 반복하면됩니까?

감사합니다.

+0

좋은 점은 홀년에 한 번만해야한다는 것입니다. 그리고 당신은 당신의 가치를 캐쉬 할 수 있습니다. – swisswiss

+0

@swisswiss 나는 몇 년이 걸릴 수 있음을 언급하는 것을 잊어 버렸다. 그냥 내 질문을 편집했습니다. – fraxool

답변

0

다행히도이 문제는 이미 해결되었습니다. iCalendar 표준에는 되풀이 이벤트를 처리하는 되풀이 규칙 구성 요소가 있습니다. RFC 사양이 있으며 official PHP implementation도 있습니다. 또는 GitHub에서 tplaner/When 라이브러리를 확인하십시오.