欢迎光临 - 我的站长站,本站所有资源仅供学习与参考,禁止用于商业用途或从事违法行为!

帝国cms教程

帝国CMS判断下载地址或者网盘分享连接是否失效

帝国cms教程 我的站长站 2023-08-17 共61人阅读

帝国CMS判断下载地址或者网盘分享连接是否失效,此方法仅供插件开发参考!

<?php 
//设置最大执行时间是 120秒    
ini_set('max_execution_time',120); 
require('e/class/connect.php'); 
require('e/class/db_sql.php'); 
require('e/data/dbcache/class.php'); 
$link=db_connect(); 
$empire=new mysqlquery(); 
$wzurl="https://www.wdzzz.com";//自己的网站地址 
// 监测链接能否正常访问 
function httpcode($url){ 
    $ch = curl_init(); 
    $timeout = 5; 
    $user_agent = "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/29.0.1547.66 Safari/537.36"; 
    curl_setopt($ch,CURLOPT_FOLLOWLOCATION,1); 
    curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); 
    curl_setopt($ch, CURLOPT_HEADER, 1); 
    curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); 
    curl_setopt($ch,CURLOPT_URL,$url); 
    curl_setopt($ch, CURLOPT_REFERER, $wzurl); 
    curl_setopt($ch, CURLOPT_USERAGENT, $user_agent); 
    $results=curl_exec($ch);   
    $httpcode = curl_getinfo($ch,CURLINFO_HTTP_CODE); 
    if($httpcode= 200) { 
    if(strpos($results,'链接不存在')||$results=''||strpos($results,'404')){  
    return '地址失效!!!';  
    }else{  
    return '地址正常'; 
    }  
    }else{ 
    return $httpcode;    
    } 
    curl_close($ch); 
} 
// 要监测的链接数组 
$sql=$empire->query("select * from {$dbtbpre}ecms_download order by newstime desc limit 20 "); //查询下载数据表最新20条信息 
$downpath=array(); 
while($r=$empire->fetch($sql)){ 
$finfor=$empire->fetch1("select * from {$dbtbpre}ecms_download_data_".$r['stb']." where id='$r[id]' limit 1"); 
$finfor['downpath']=$finfor['downpath'].$r['title'].$r['id']; 
$downpath[]=explode("::::::",$finfor['downpath']); 
} 
//区分下载地址 
foreach ($downpath as $key => $value) { 
if(strpos($value[1],'https://') === 0){  
$url=$value[1];  
}else{ 
$url=$wzurl.$value[1]; 
} 
echo '编号:'.$key.'->标题:'.$value[4].' ->地址: '.$url.' ->状态: '.httpcode($url).'<br>'; 
//以下为JSON输出可以注释 
/* 
echo json_encode( [ 
"bianhao" => $key, 
"title"=>$value[4], 
"titleurl"=>$url, 
"status" =>httpcode($url), 
] ); 
*/ 
}