PHP 가 계획 작업 을 정시 에 수행 하 는 여러 가지 방법 요약

PHP 가 정시 에 실행 하 는 세 가지 방식 으로 1,windows 의 계획 임무 2,Liux 의 스 크 립 트 프로그램 3 을 실현 합 니 다.웹 브 라 우 저 로 하여 금 정시 에 windows 계획 임 무 를 갱신 하 게 합 니 다.PHP 는 win 서버 에서 뛰 지 않 고 구체 적 으로 실현 하 는 것 도 깊이 연구 하지 않 습 니 다.인터넷 에서 실현 하 는 원 리 는 대개 bat 각본 을 쓴 다음 에 window 작업 에 이 bat 스 크 립 트 를 추가 하 게 합 니 다.구체 적 으로 참고 할 수 있 습 니 다:https://www.jb51.net/article/29134.htmLiux 의 스 크 립 트 는 주로 crontab 명령 에 사 용 됩 니 다.사용 방식:crontab filecrontab[-u user][-u user]{-l|-r|-e}설명:crontab 는 사용자 가 고정 시간 이나 고정 간격 으로 프로그램 을 실행 할 때 crontab 를 사용 하여 셸 스 크 립 트 를 쓰 고 PHP 로 셸 을 호출 하 는 것 입 니 다.이것 은 Liux 의 특성 을 이용 합 니 다.PHP 자체 언어의 특성 은 아 닐 것 입 니 다.참고 할 수 있 습 니 다https://www.jb51.net/article/29136.htmPHP 는 정시 실행 계획 작업 을 수행 합 니 다.php 를 사용 하여 브 라 우 저 를 새로 고침 하려 면 몇 가지 문 제 를 해결 해 야 합 니 다.PHP 스 크 립 트 의 실행 시간 제한,기본 값 은 30m 해결 방법:settime_limit();또는 PHP.ini 설정 max 수정execution_time 시간(추천 하지 않 음)클 라 이언 트 브 라 우 저가 닫 히 면 프로그램 이 종 료 될 수 있 습 니 다.해결 방법:ignoreuser_abort 는 페이지 를 닫 아 도 정상적으로 실 행 됩 니 다.프로그램 이 계속 실행 되면 많은 자원 을 소모 할 수 있 습 니 다.해결 방법 은 sleep 프로그램 을 사용 하여 잠시 휴면 한 다음 에 PHP 를 실행 할 때 정기 적 으로 실 행 된 코드 입 니 다
 
<?php
ignore_user_abort();// ,PHP .
set_time_limit(3000);// set_time_limit(0)
$interval=5;// 5s

// 1--
do{
echo ' '.time().'<br/>';
sleep($interval);// 5s
}while(true);

// 2---sleep
require_once './curlClass.php';//

$curl = new httpCurl();//
$stime = $curl->getmicrotime();
for($i=0;$i<=10;$i++){

echo ' '.time().'<br/>';
sleep($interval);// 5s

}
ob_flush();
flush();
$etime = $curl->getmicrotime();
echo '<hr>';
echo round(($etime-stime),4);//
테스트 를 해 보 니 효율 이 그리 높 지 않 았 다.
QQ截图20111216110444  결론:개인 적 으로 PHP 가 정시 에 임 무 를 수행 하 는 효율 이 높 지 않다 고 생각 합 니 다.정시 에 임 무 를 수행 하 는 일 은 셸 에 게 맡 기 는 것 이 좋 습 니 다.비교 하 는 것 이 왕도 입 니 다.ps:그 순환 하 는 방법 은 악성 공격 사이트 에서 자주 사용 하 는 방법 인 것 같 습 니 다.

좋은 웹페이지 즐겨찾기