概述
/**
* 查询xxx游戏是否下架
* linux crontab 每周1的3点到5点之间的每小时5分都进行游戏检测下架工作
* 5 3-5 * * 1 /usr/bin/curl http://xxx.com/v1/is_games_null
* @Author wave
* @DateTime 2019-04-28 17:00:09
* @return Null
*/
public function is_games_null()
{
set_time_limit(0);
$data=Db::name('Cron')->find(1);
/**
* 查询当前时间是否大于存储的时间
* 如果当前时间大于数据库存储的时间,
* 那么就执行
* 否则就没有到1周,不允许执行
*/
if(isset($data['create_time']) && time() < $data['create_time'])
{
die;
}
$counts=$this->gameinfo->field("id")->where('platform','=',5)->where("state",'=',1)->count();
$counts=ceil($counts/10);
if(!isset($data))
{
/**
* 如果没有定时的任务,那么添加进去
*/
$data['limit']=0;
$data['count']=$counts;
$data['create_time']=time();
$data['id']=Db::name('Cron')->insertGetId($data);
}
/**
* 如果有定时的任务那么取出来。
*/
$gameModel=$this->gameinfo;
$count=$data['limit']+5;
for($i=$data['limit'];$i<=$count;$i++)
{
$games=[];
$games=$gameModel->field("id,androiddownload")->where('platform','=',5)->where("state",'=',1)->limit($i,10)->select()->toArray();
$shelf=array();
$index=0;
foreach($games as $key=>$val)
{
if(strpos($val['androiddownload'],'99maiyou') !== false)
{
$is_apk_status=$this->is_apk_status($val['androiddownload']);
if($is_apk_status === 3 )
{
$gameModel->where('id',$val['id'])->update(['state' =>0]);
$shelf[$index]['gid']=$val['id'];
$shelf[$index]['create_time']=time();
}
}else{
continue;
}
$index++;
}
Db::name('Shelf')->insertAll($shelf);
}
/**
* 如果,任务跟总数一样或者大于总数,那么就是执行完了。
*/
if($data['limit']>=$data['count'])
{
$data1['limit']=0;
$data1['create_time']=time()+86400*7;
}else{
$data1['limit']=$count;
}
$data1['count']=$counts;
Db::name('Cron')->where("id",$data['id'])->update($data1);
}
/**
* 检测链接的APK文件什么状态
* @Author wave
* @DateTime 2019-04-28T16:59:50+0800
* @return 1 正在运行的游戏
* @return 2 没有分包的游戏
* @return 3 下架的游戏
*/
protected function is_apk_status($url)
{
$headers=get_headers($url,true);
//判断Location是否存在,如果Location存在,并且是数组,那么就是已经上线的游戏
return isset($headers['Location']) ? (is_array($headers['Location']) ? 1 : 2 ) : 3;
}
最后
以上就是忧伤钢笔为你收集整理的PHP检测链接是否为有效的APK文件的全部内容,希望文章能够帮你解决PHP检测链接是否为有效的APK文件所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复