php同时下载多条URL函数

简介: php同时下载多条URL函数
/**
同时打开多个URL
*/
function get_urls(u r l s , urls,urls,per=10,$try=1){
h e a d e r s [ ] = ′ U s e r − A g e n t : ′ . headers[] = 'User-Agent: '.headers[]= 
 User−Agent: 
 ._SERVER[‘HTTP_USER_AGENT’];
$headers[] = ‘Accept: text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8’;
$headers[] = ‘Accept-Language: zh-cn,zh;q=0.5’;
$headers[] = ‘Accept-Charset: GB2312,utf-8;q=0.7,*;q=0.7’;
$headers[] = ‘Keep-Alive: 115’;
h e a d e r s [ ] = ′ C o n n e c t i o n : k e e p − a l i v e ′ ; / / headers[] = 'Connection: keep-alive'; //headers[]= 
 Connection:keep−alive 
 ;//headers[] = 'Cookie: '.$cookie_file;
//$m_cookie_name = $this->get_content_cookie_path();
o p t i o n s = a r r a y ( C U R L O P T H T T P H E A D E R = > options=array( CURLOPT_HTTPHEADER=>options=array(CURLOPT 
H
 TTPHEADER=>headers,
CURLOPT_SSL_VERIFYHOST=>FALSE,
CURLOPT_SSL_VERIFYPEER=>FALSE,
CURLOPT_COOKIEFILE=>m c o o k i e n a m e , C U R L O P T C O O K I E J A R = > m_cookie_name, CURLOPT_COOKIEJAR=>m 
c
 ookie 
n
 ame,CURLOPT 
C
 OOKIEJAR=>m_cookie_name,
);
u r l s 2 = a r r a y ( ) ; f o r e a c h ( urls2=array(); foreach(urls2=array();foreach(urls as k = > k=>k=>v){
u r l s [ urls[urls[k]= t h i s − > g e t u r l ( this->get_url(this−>get 
u
 rl(v);
}
while(count(u r l s ) ) urls))urls))urls2[] = array_splice(u r l s , 0 , urls,0,urls,0,per);
$errorUrls=array();
d a t a s = a r r a y ( ) ; f o r e a c h ( datas = array(); foreach(datas=array();foreach(urls2 as u k = > uk=>uk=>url2s){
m = n e w H t t p M u l t i R e q u e s t ( m = new Http_MultiRequest(m=newHttp 
M
 ultiRequest(options);
m − > s e t U r l s ( m->setUrls(m−>setUrls(url2s);
$data = $m->exec();
i n f o s = ( infos = (infos=(m->getInfos());
foreach($infos as i k = > ik=>ik=>info){
if($info[‘http_code’]!=200){
e r r o r U r l s [ errorUrls[errorUrls[ik]=u r l 2 s [ url2s[url2s[ik];
echo i k . ′ h t t p c o d e : ′ . ik.' http_code:'.ik. 
 http 
c
 ode: 
 .info[‘http_code’].’
’;
}
}
d a t a s = a r r a y m e r g e ( datas =array_merge (datas=array 
m
 erge(datas, KaTeX parse error: Expected 'EOF', got '}' at position 10: data); }̲ //echo'Error…errorUrls);
if(KaTeX parse error: Expected 'EOF', got '&' at position 10: errorUrls&̲&try>0){
d a t a = g e t u r l s ( data = get_urls(data=get 
u
 rls(errorUrls,p e r , per,per,try-1);
d a t a s = a r r a y m e r g e ( datas =array_merge (datas=array 
m
 erge(datas, $data);
}
return $datas;
}
————————————————
版权声明:本文为CSDN博主「是有头发的程序猿」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/wbryze/article/details/116584716
相关文章
|
11天前
|
PHP Perl
PHP-ereg()函数
但再次强调,不建议使用ereg()函数,而应该改用preg_match()函数来执行更灵活和强大的正则表达式匹配操作。
19 4
|
14天前
|
安全 PHP
【PHP开发专栏】PHP文件上传与下载实现
【4月更文挑战第30天】本文介绍了在PHP中实现文件上传和下载的详细步骤。文件上传通过`$_FILES`全局数组处理,包括设置HTML表单、PHP脚本处理上传及安全性考虑。文件下载则可使用`readfile()`、`fpassthru()`或`file_get_contents()`函数,同时关注安全问题,如防止目录遍历漏洞。文中还提供了一个简单的图片分享网站案例,演示了上传和下载功能的集成。
|
15天前
|
存储 PHP 数据库
【PHP开发专栏】PHP数组操作与常见函数
【4月更文挑战第29天】本文介绍了PHP中的数组及其操作,包括定义与初始化、访问与修改、遍历。还探讨了常用的数组函数,如count()、in_array()、array_push/pop()、array_shift/unshift()、array_merge()、array_keys/values()以及sort()和rsort(),帮助开发者更有效地处理和操作数组。
|
15天前
|
运维 JavaScript Serverless
Serverless 应用引擎产品使用之在阿里函数计算中,Php环境,配置取消禁止函数exec如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
33 4
|
1月前
|
PHP
php下载MP4视频
php下载MP4视频
11 0
|
1月前
|
JSON PHP 数据格式
php函数
php函数
8 0
|
1月前
|
PHP
php事务删除加调用日志函数
php事务删除加调用日志函数
8 1
|
3月前
|
PHP
从建站到拿站 -- PHP判断循环及函数
从建站到拿站 -- PHP判断循环及函数
14 0