記録

クロンを改良しました。前のクロンPHPは恐らくBAGってて。


クロンPHPって言っても月や曜日判定はしていません。今回、その判定も行うように変えようと再度、コードを改良しました。前回のコードの約半分ぐらいのコードになってます。土曜日までには、月や曜日の対応を行うようにします。
ちなみにどういう機能をするのかと言いますと、さくらサーバではクロンの制限があります。その制限数以上、使おうとおもって考えたのが、一つのPHPを叩いてクロンがしている事を模倣することでした。
※昨日の話は撤回はしないものの、SEOよりSNSでSEOという考え方に変えました。よくよく考えてみるとアクセス数が多いほど、検索上位表示される確率も増えるのでやはり大事かなとボット。ボットらしくない振る舞いしたボットなら何とか成るかも知れないとも思ってます。

<?php
	$time_h = array("*","8,11,12,13,17,18,19,20","7,8,11,12,13,17,18,19,21,22,23,1,2","7,8,11,12,13,17,18,19,21,22,23,1,2");
	$time_m = array("*/5","0","0","0");
	$file_name = array("/home/zen-do/www/zip358.com/index.php","/home/zen-do/www/zip358.com/twitterbot/index-2.php","/home/zen-do/www/zip358.com/twitterbot/index2-2.php","/home/zen-do/www/zip358.com/twitterbot/index2-3.php");
	$h = date("H");
	$m = intval(date("i"));
	$cnt = 0;
	foreach($time_h as $h_ary){
		$chk_h = chk($h_ary);
		if(is_array($chk_h)){
			if(chk2($chk_h,$h)){
				$chk_m = chk($time_m[$cnt]);
				if(chk4($chk_m,$time_m[$cnt],$m,$file_name[$cnt]));
			}
		}else{
			if(chk3($time_h[$cnt],$chk_h,$h)){
				$chk_m = chk($time_m[$cnt]);
				if(chk4($chk_m,$time_m[$cnt],$m,$file_name[$cnt]));
			}
		}
		$cnt++;
	}
	function chk($chk_hoge){
		if(strcmp($chk_hoge,"*") == 0 ){
			return "*";
		}
		if(strstr($chk_hoge,"*/")){
			return mb_substr($chk_hoge,2,strlen(chk_hoge)-2);
		}
		if(strstr($chk_hoge,",")){
			return explode(",",$chk_hoge);
		}
		return $chk_hoge;
	}
	function chk2($chk_hoge,$H_or_M){
		foreach($chk_hoge as $hoge){
				if($H_or_M == $hoge){
					return true;
				}
			}
			return false;
	}
	function chk3($chk_H_or_M,$chk_hoge,$H_or_M){
		if(strcmp($chk_hoge,"*") == 0 ){
			return true;
		}elseif(strstr($chk_H_or_M , "*/")){
			if($H_or_M % $chk_hoge == 0){
				return true;
			}else{
				return false;
			}
		}else{
			if($H_or_M == $chk_hoge){
				return true;
			}else{
				return false;
			}
		}
		return false;
	}
	function chk4($chk_hoge,$chk_hoge2,$m,$file_name){
		if(is_array($chk_hoge)){
			if(chk2($chk_hoge,$m)){
				if(shell_exec("/usr/local/bin/php -f ".$file_name))echo "/usr/local/bin/php -f ".$file_name;
				return true;
			}
		}else{
			if(chk3($chk_hoge2,$chk_hoge,$m)){
				if(shell_exec("/usr/local/bin/php -f ".$file_name))echo " /usr/local/bin/php -f ".$file_name;
				return true;
			}
		}
		return false;
	}
?>
<?php
	$time_h = array("*","8,11,12,13,17,18,19,20","7,8,11,12,13,17,18,19,21,22,23,1,2","7,8,11,12,13,17,18,19,21,22,23,1,2");
	$time_m = array("*/5","0","0","0");
	$file_name = array("/home/zen-do/www/zip358.com/index.php","/home/zen-do/www/zip358.com/twitterbot/index-2.php","/home/zen-do/www/zip358.com/twitterbot/index-2-2.php","/home/zen-do/www/zip358.com/twitterbot/index-2-3.php");
	$tt[0] = date("H");
	$tt[1] = date("i");
        $ayMAX=0;
        $MAXS =2;
        for($i=0;$i<count($time_h);$i++){
            $chk[$ayMAX][0]=$time_h[$i];
            $chk[$ayMAX][1]=$time_m[$i];
            $chk[$ayMAX][2]=$file_name[$i];
            $ayMAX++;
         }
        for($ay=0;$ay<$ayMAX;$ay++){
            $flg=false;
            for($i=0;$i<$MAXS;$i++){
                if(preg_match("/\*/", $chk[$ay][$i])){
                    if(preg_match("/\*\//", $chk[$ay][$i])){
                        preg_match("/[0-9]{1,2}/", $chk[$ay][$i],$t);
                        if(!($tt[$i]%$t[0])){
                            $flg = true;
                        }else{
                            $flg = false;
                            break;
                        }
                    }else{
                        if("*" == $chk[$ay][$i]){
                            $flg = true;
                        }else{
                            $flg = false;
                            break;
                        }
                    }
                }else{//////////////////
                    if(in_array($tt[$i],preg_split("/,/",$chk[$ay][$i]))){
                        $flg = true;
                    }else{
                        $flg = false;
                        break;
                    }
                }
            }
            if($flg){shell_exec("/usr/local/bin/php -f ".$chk[$ay][$i]);}
        }
?>

 



BOT辞めました{BOTやめるとアクセス減ることは無い?。}前のページ

cronPHPを作ってみた朝の続き。次のページ

関連記事

  1. 記録

    今日はお休みなのに。

    今日はお休みなのに、クラウドワークスのお仕事に手を出してしまってへと…

  2. 記録

    春の暖かさ感じない無いまま、梅雨を迎えそうな高知。

    春の暖かさ感じない無いまま、梅雨を迎えそうな高知、そん…

  3. 記録

    ネットのあれを試してみました、バニラアイスと赤ワイン。

    ネットのあれを試してみました、バニラアイスと赤ワイン。バニラアイス…

  4. 記録

    REOL(れをる) これは!?凄いな・・・。

    REOL これは!?凄いな・・・。凄いミュージシャン、アーティスト…

  5. 記録

    コロナウィルス対策でIT促進化が進む?

    コロナウィルス対策でIT促進化が進む…。事務的作業をテレワーク…

  6. 記録

    Adobeの値段の付け方がせこい。

    自分はAdobeのフォトプランというものを使っているのですがイラス…

PAGE TOP