이 if문 구절에 대해...

이 if문 구절에 대해...

QA

이 if문 구절에 대해...

본문


    if($filetime && $filetime < (G5_SERVER_TIME - 86400 * $cache_time)) { //10분 (60초 *10)
                    @unlink($cache_file);
                    $cache_fwrite = true;
                }

 

위 코드는 extend에서 실행 됩니다.

 

상대적인 시간으로 하루를 기준으로 해두면 환경설정에서 세션/캐시 등 삭제하면

그 삭제한 시점으로 다시 돌아가버립니다..

 

매일 밤 24시 마다 위 코드가 실행되게 하고 싶은데

(G5_SERVER_TIME - 86400 * $cache_time)

이 구문을 어떻게 고쳐야 할까요?

 

$cache_time의 값은 1 입니다.

이 질문에 댓글 쓰기 :

답변 2

PHP는 Call에 의해서 실행되는 웹페이지 구동방식입니다.

 

따라서, 

띄워놓고 화면을 무한정 놔둔다면

 

JavaScript의 타이머를 이용해서

재호출 하면서 시간체크를 하거나

 

Linux/Unix 에서 제공하는 crantab 기능을 이용하라고 letsgolee님이 안내하신거구요

 

그누보드에서는

https://sir.kr/g5_plugin/3888

이런 형태로 강제 자동실행 모듈들을 이용하실수있습니다.

 

자세한 설명/문의는 해당 플러그인 제공자분께 문의하시면됩니다.

매일 밤마다 일정 시간에 실행되게 하려면 cron을 이용하는 방법을 해야 할 것 같네요. 행당 호스팅업체에서 cron을 지원해주는지 확인하셔야 할 듯요. php자체에서는 일정 시간에 서버에서 실행되지 않기 때문에 직접 그 시간에 접속을 하거나 혹은 브라우져를 계속 띄워놔서 자바스크립트를 통해 일정시간에 접속하게 만들어야 할 겁니다. 혹은 기준 시간이 넘어간 상태에서 서버에 누군가 최초 접속할 때 위의 코드가 실행되게 하는 방법도 있습니다. 그것은 세션을 이용하면 되는데 문제는 위의 코드가 캐쉬 파일 삭제와 관련되기 때문에 최초 접속자에게까지 영향을 미칠 가능성이 있습니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 123,478 | RSS
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT