>

매시간마다 PHP 스크립트를 실행하고 싶었고 밤 8 시부 터 오전 8 시까 지 스크립트를 중지해야합니다.

내가 만든 코드의 일부

$hour = date('G');
print $hour;
if ($hour >= 21 && $hour <=8)
{
die("Script is halted.\n");
}

cron 작업이 evey hour를 실행하도록 설정되어 있습니다. 그러나 어떤 이유로 든 오후 8시에서 오전 8 시까 지 멈추지 않고 매시간 실행됩니다.


  • 답변 # 1

    9시에서 오후 7시 사이에만 실행되도록 cron을 설정하면 코드에 조건문을 추가하는 것이 어리석은 것 같습니다.

    0 9-19 * * * php /var/www/vhosts/domain.com/httpdocs/scripts/example.php
    
    
    이에 대한 설명은 crontab.guru를 참조하십시오. Windows에서는 예약 된 작업에서 실행할 시간을 간단히 설정할 수 있습니다.

  • 답변 # 2

    변경 :

    if ($hour >= 21 && $hour <=8)
    
    

    to :

    if (($hour >= 21) or ($hour <=8))
    
    

    또는

    if (($hour >= 21) || ($hour <=8))
    
    

    &&  == and

  • 답변 # 3

    date_default_timezone_set('UTC');
    $New_Time = time() + (6 * 60 * 60);
    $Hour = date("G",$New_Time);
    if((8>$Hour ||  9<$Hour) && (14>$Hour || 15<$Hour) && (20>$Hour || 21<$Hour)){
        echo "Your Codes Here
        Works nicely On PHP
        But change my timestamps.!";
    }
    
    

관련 자료

  • 이전 opencv - Raspberry Pi의 PYPI에서 패키지 설치
  • 다음 python - xlsx 파일에서 팬더 데이터 프레임 생성